【问题标题】:IOS: reload a tableview with custom tableview cellsIOS:使用自定义表格视图单元重新加载表格视图
【发布时间】:2011-04-28 15:33:54
【问题描述】:

在我的项目中,我有一个带有 20 个自定义 tableviewcell 的 tableview;当我调用视图时,我的 tableview 方法在哪里:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

用自定义的 tableviewcells 填充我的表格...一切正常。

在我的自定义 tableviewcells 中,我有一个 UIImageView,我用 .png 填充,一切正常。 但是,如果我想用另一个 .png 更改这个 UIImageView?我必须再次使用所有 tableviewcells 重新加载我的 tableview ......不是吗?我该怎么做?

【问题讨论】:

    标签: objective-c xcode ios uitableview


    【解决方案1】:

    您必须重新加载要更改其视图的可见单元格。 [tableView visibleCells]。滚动表格时,其余部分会自动更改。

    【讨论】:

      【解决方案2】:

      您的图像视图与任何其他视图一样是视图层次结构的一部分。重要的是保留对相关图像视图的引用,以便您仍然能够轻松访问它。

      您可能希望通过将视图连接到 tableviewcontroller 的插座(如果您已在界面生成器中设置自定义单元格)或在以编程方式创建单元格后立即将视图分配给 tableviewcontroller 的 ivar 来执行此操作.

      如果您想对所有单元格执行此操作,最好将您希望能够编辑的所有图像视图添加到数组中。如果单元格不会重新排序,那么一个接一个地添加它们应该没问题,您可以使用相关表格视图单元格中的索引来检索它们。如果用户可能对表格重新排序,您需要使用标签(或类似方式)识别视图。

      【讨论】: