如果邮件未读,我正在执行以下操作来设置单元格图像
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MessageCell"];
Message *m = [self.messages objectAtIndex:indexPath.row];
cell.textLabel.text = m.subject;
NSString *detail = [NSString stringWithFormat:@"%@ - %@", m.callbackName, m.dateSent];
cell.detailTextLabel.text = detail;
if([m.messageRead isEqualToString:@"False"])
cell.imageView.image = [UIImage imageNamed:@"new.png"];
return cell;
}
这是正确显示图像的时候。如果我向下滚动并向上滚动,它们都会显示图像是否应该
答案 0 :(得分:2)
细胞被重复使用。因此,您需要为每个条件设置每个属性。
if([m.messageRead isEqualToString:@"False"])
cell.imageView.image = [UIImage imageNamed:@"new.png"];
else
cell.imageView.image = nil;
答案 1 :(得分:1)
由于UITableViewCell
被重复使用,因此如果您不需要图像,则应将cell.imageView.image
设置为nil
。
if([m.messageRead isEqualToString:@"False"]) {
cell.imageView.image = [UIImage imageNamed:@"new.png"];
} else {
cell.imageView.image = nil;
}