【问题标题】:UITableViewCell background image pathUITableViewCell 背景图片路径
【发布时间】:2011-06-01 15:32:18
【问题描述】:

我有一个 UITableView,其中包含单元格的自定义背景图像。根据单元格在表格中的位置,我有 4 张图像。第一行,中间行,最后一行和唯一行都有一个。我基本上按照这里的教程:http://cocoawithlove.com/2009/04/easy-custom-uitableview-drawing.html

将新单元格添加到表格时会出现我的问题。其他单元格不会更新以反映它们的新行位置。

我应该何时以及如何更新这些单元格?会出现吗?还是我应该添加这个方法?

controller:(NSFetchedResultsController *)controller didChangeObject:(id)anObject atIndexPath:(NSIndexPath *)indexPath forChangeType:(NSFetchedResultsChangeType)type

现在背景图像分配发生在我在 cellForRowAtIndexPath 中调用的 configureCell:atIndexPath 函数中:

【问题讨论】:

    标签: iphone uikit uitableview


    【解决方案1】:

    如果没有那么多单元格,您可以简单地调用 UITableView 上的 reloadData 方法。

    但是,更有效的方法是使用类似 reloadRowsAtIndexPaths:withRowAnimation: UITableView 的方法来仅重新加载您需要的行。 (您可能需要查看 NSIndexPath 参考,了解它如何映射到表格。)

    【讨论】:

    • 如何获取刚刚更新的行之前的行。由于我使用的是 fetchedResultsController 我假设我可以将它放在此方法的插入案例中:- (void)controller :(NSFetchedResultsController *)控制器 didChangeObject:(id)anObject atIndexPath:(NSIndexPath *)indexPath forChangeType:(NSFetchedResultsChangeType)type newIndexPath:
    • 如果有意义的话,它将是“[indexPath row] - 1”。
    猜你喜欢
    • 2014-05-26
    • 1970-01-01
    • 1970-01-01
    • 2014-03-31
    • 1970-01-01
    • 2018-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多