こんにちは、セルをカスタマイズするために作成した CustomTableViewCell 内で EGOImageView を使用しようとしています。これは、EGOImageView を使用したコードです。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString* simpleTableIdentifier = @"Albums";
CustomTableCell* cell = (CustomTableCell*)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (!cell)
{
cell = [[CustomTableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
NSLog(@"Show once or more times");
}
NSDictionary* dictionary = (NSDictionary*)[self.albumCollection objectAtIndex:indexPath.row];
cell.label.text = [dictionary valueForKey:@"name"];
EGOImageView* imageView = [[EGOImageView alloc] initWithPlaceholderImage:[UIImage imageWithContentsOfFile:@""]];
[imageView setImageURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@/picture?type=small&access_token=%@", (NSString*)[dictionary valueForKey:@"id"], [[FBSession activeSession] accessToken]]]];
[imageView setFrame:CGRectMake(0.0f,0.0f,78.0f,78.0f )];
[cell.iView addSubview:imageView];
[imageView release];
同じ画像をロードする各セルの画像。画像の読み込み中にセルを再利用したためでしょうか。
問題が発生した理由が思いつかない問題を見つけました。グラフ API を使用して画像https://graph.facebook.com/%@/picture?type=small&access_token=%@を取得しました。最初のパラメーターはアルバム ID でした。
問題を簡単に確認できるようにするために、同じ写真を使用したアルバムに関係なく、セルで 1 つのアルバムのみを使用しました。しかし、リンクをブラウザにコピーすると、実際の写真の URL がアドレス バーに表示され、画像が表示され、正しい写真が表示されました。
誰が何が間違っていたのか知っていますか。