我在我的两个视图控制器中使用了相同的代码(它们实现了相同的类,它们下载的 url 发生了变化),并且在一种情况下,图像正确显示,而在另一种情况下,我确实看到了一个空单元格。
这是我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier=@"MyCell";
//this is the identifier of the custom cell
MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
tableView.backgroundColor=[UIColor clearColor];
tableView.opaque=NO;
tableView.backgroundView=nil;
if (cell == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"MyCell" owner:self options:nil];
cell = [nib objectAtIndex:0];
}
NSLog(@"Image url is:%@",[images_url objectAtIndex:indexPath.row]);
NSURL *url_image=[NSURL URLWithString:[images_url objectAtIndex:indexPath.row]];
cell.myimage.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:url_image]];
return cell;
}
正如我告诉你的,我有 2 个视图控制器实现了同一个类。在确实加载的视图中,url 是根据标志的值设置的。如果我打开控制器 A,我看不到图像,如果我打开视图 B,我可以看到图像。这两个网址都是正确的,因为我可以使用我插入的 NSLog 检查它。
可能是什么问题?