在我的实验中,我需要引用 tableView 中的第一个 UITableViewCell
。通过某些操作,我需要设置图像和其他一些单元格属性,并保持此唯一单元格的状态,即使 tableView 将滚动也是如此。由于重用,所有这些属性都可能通过滚动(实际上是)被取消。为了每次单元格出现在屏幕上时设置此属性,在“-cellForRowAtIndexpath”内部我尝试使用以下方法捕获第一个单元格:
UITableViewCell *firstCell = (UITableViewCell *)[atableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
但看起来像这样我只能在下一个可滚动的“屏幕”上捕获下一个第一个单元格。 那么,我怎样才能获得对第一个 UITableView 单元格的引用呢?
最佳答案
如果我没理解错的话,您是在尝试在 (0, 0) 处的单元格即将显示时做一些特殊的事情,对吗?如果是这种情况,您可以轻松实现 UITableViewDelegate
的 tableView: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/