ios - 如何获取对当前 UITableViewCell 的引用

标签 ios objective-c uitableview reuseidentifier

在我的实验中,我需要引用 tableView 中的第一个 UITableViewCell。通过某些操作,我需要设置图像和其他一些单元格属性,并保持此唯一单元格的状态,即使 tableView 将滚动也是如此。由于重用,所有这些属性都可能通过滚动(实际上是)被取消。为了每次单元格出现在屏幕上时设置此属性,在“-cellForRowAtIndexpath”内部我尝试使用以下方法捕获第一个单元格:

UITableViewCell *firstCell = (UITableViewCell *)[atableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];

但看起来像这样我只能在下一个可滚动的“屏幕”上捕获下一个第一个单元格。 那么,我怎样才能获得对第一个 UITableView 单元格的引用呢?

最佳答案

如果我没理解错的话,您是在尝试在 (0, 0) 处的单元格即将显示时做一些特殊的事情,对吗?如果是这种情况,您可以轻松实现 UITableViewDelegatetableView:willDisplayCell:forRowAtIndexPath: 方法,如下所示:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
  if (indexPath) {
    // Do something special
  }
}

如果您需要撤消操作,还有相应的 tableView:didEndDisplayingCell:forRowAtIndexPath: 方法。

希望对您有所帮助!

关于ios - 如何获取对当前 UITableViewCell 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22900966/

相关文章:

iphone - UITableView在离开框架时在单元格上随机滴答

ios - UICollectionView 透明背景

ios - 如何将我的 View Controller 设置为它自己的委托(delegate)?

ios - 如何在 iOS9.2 上修复 Xcode 错误 “Could not find Developer Disk Image”

ios - 从另一个 UITableViewCell 类隐藏自定义 UITableViewCell

ios - UITableView 的单元格不能用作设置

ios - 滚动后 TableView 颜色重置

ios - 无法处理背景音频的远程控制事件

objective-c - 为什么我们不能直接在 NSArray 中存储 C 结构

iphone - 以编程方式将开关添加到 ScrollView 会引发异常