使用UITextField的UITableView - 即使在用户滚动后也能保留数据

时间:2010-12-27 19:13:34

标签: iphone cocoa-touch uitableview uitextfield

我有一个UITableView,它有很多UITableViewCells - 这些UITableViewCells里面有多个UITextField。

现在每次我上下滚动 - 并且UITableViewCells走出视图 - 然后返回我在UITextField中输入的任何文本消失 - 这是什么工作的最佳方法?

2 个答案:

答案 0 :(得分:12)

创建一个NSMutableArray,在每个位置保存一个匹配每个单元格的NSString对象。

当您在- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath中配置+显示每个单元格时,请将UITextField的文本设置为位于indexPath.row的数组中的字符串。

编辑UITextField时,在数组中当前NSString位置插入/更新indexPath.row对象

答案 1 :(得分:1)

如果要在UITextField中添加UITableViewCell,则需要注意单元格的状态,因为单元格在滚动时会得到dequeued

您需要维护Dictionary才能将UITextField中存在的文本保留在UITableViewCell中。

请参阅我的github存储库,以获取在uitableviewcell中具有UITextField / UIButton状态的完整解决方案。

代码是在Swift 4中使用XCode 9.4创建的