滚动tableview时,Textfield变为空

时间:2017-06-12 12:27:34

标签: ios swift uitableview swift3

我有一个tableview和一个单独的xib用于自定义单元格,其中我有多个标签和一个文本字段。

我想从按钮点击的所有单元格中输入值,但使用for cell in self.tableViewList.visibleCells {只给出了可见单元格的值,而所有其他文本字段值都丢失了。

请建议我获取所有文本字段值的替代方法。

我正在使用swift 3并开发ipad应用程序。

1 个答案:

答案 0 :(得分:0)

您面临的问题是重用UITableViewCells。 不会为每个数据项(行)创建xib中的单元类。 它在滚动时被重用,这意味着UITableViewCell的同一个实例可以显示多个数据实例。

解决方案是将数据保存在" dataSource" - 在tableView之外并将值应用于" cellForRow"方法。 在UITextField更改时,您必须修改dataSource中的值(例如,通过使用委托模式)。