iOS SDK:如何在表格视图中获取不可见的单元格?

Dan*_*ler 9 iphone uitableview ios

如何获取当前在表中不可见的indexPath的单元格?(单元格超出范围)

获取我的手机的代码:

NSString *name = [[(ELCTextfieldCell *)[tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]] rightTextField] text];
Run Code Online (Sandbox Code Playgroud)

-cellForRowAtIndexPath...返回,nil因为所需indexPath处的单元格超出范围.那么我如何获得正确的细胞而不是零呢?

Rap*_*sso 17

UITableView只保留可见单元格.如果你需要一个看不见的,你必须打电话tableView:cellForRowAtIndexPath:UITableView dataSource.所以,如果self是一个类dataSource:

UITableViewCell * cell = [self tableView:table cellForRowAtIndexPath:indexPath];
Run Code Online (Sandbox Code Playgroud)

  • 通常,不会保留在这些单元格中输入的数据.仅在仍在缓存中时才有效. (3认同)

Eik*_*iko 5

这不是它的工作方式。您需要在输入或更改信息后立即抓取并存储信息。它很容易超出范围,您不能保证电池寿命足够长。好吧,从技术上讲,您可以坚持使用它(并且对于相同的索引路径,始终返回相同的单元格),但是我会对这种设计提出疑问。