-1

我有一个表格视图。我创建了一个方法,它使用单元格获取所需的所有数据并返回更新的单元格。在那种方法中,我有:

我的行单元格就像这样 static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView 
                         dequeueReusableCellWithIdentifier:CellIdentifier];
cell = myCellcreationMethod : cell : reuseIdentifier: other arguments;

MycellCreation 方法是这样的:带有参数的 MycellCreation 一些字符串、单元格和重用标识符。

if ( cell == nil ) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reuseIdentifier];
    //Here code that creates a custom image view something like:
    thumbnailView = [[UIImageView alloc] initWithFrame:CGRectMake(9, 9, 70, 70)];
    thumbnailView = [imUtil getImageViewWithRoundedCorners:thumbnailView andRadius:10.0];
    thumbnailView.contentMode = UIViewContentModeScaleAspectFit;
    [cell.contentView addSubview:thumbnailView];
    //same here for another image view,
    //same again
    //and there same for a UILabel
}
//Here I set in each case the data for each imageView from above and the UIlabel text like

UIImage *thumbnailImage = [imUtil getThumbnailImageWithFile:thumbnail];
thumbnailView.image = thumbnailImage;
//the others go here
textLabel.text = @"something";

return cell;

所有单元格都具有相同的标识符,因为它们都属于同一类型。但是当我向下滚动时,它不会显示与列表中的下一个对象对应的数据(新缩略图新图像,uilabel 中的新文本),它会复制第一个对象。我猜它会加载重用的单元格,但不会放入新数据。

请问有什么建议吗?

4

1 回答 1

0

我找到了答案。我不应该只是在我的 tableview 类中使用方法添加视图。我创建了一个新的 UITableView 子类,用我的自定义视图对其进行了初始化,并在其中创建了一个设置新数据的方法。然后使用它们两个,它就像一个魅力!

于 2012-05-26T01:43:46.283 回答