UITableView 与 UITextField - 即使用户滚动后也保留数据

发布于 2024-10-09 08:12:27 字数 187 浏览 1 评论 0原文

我有一个 UITableView,它有一堆 UITableViewCells - 这些 UITableViewCells 里面有多个 UITextFields。

现在,每次我上下滚动时 - UITableViewCells 就会离开视图 - 然后返回时,我在 UITextField 中输入的任何文本都会消失 - 完成这项工作的最佳方法是什么?

I have a UITableView and it has bunch of UITableViewCells - These UITableViewCells have multiple UITextFields inside it.

Now every time I scroll up and down - and the UITableViewCells go out of the view - and comes back in whatever text I enter inside the UITextField disappears - What is the best way to make this work?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

对岸观火 2024-10-16 08:12:27

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

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

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

create an NSMutableArray which at each position, holds an NSString object which matches each cell.

when you config + show each cell in - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath, set the text of the UITextField to the string in the array at position indexPath.row.

when editing a UITextField, insert/update the NSString object at the current indexPath.row position in the array

<逆流佳人身旁 2024-10-16 08:12:27

如果您要在 UITableViewCell 中添加 UITextField,则需要注意单元格的状态,因为单元格在滚动时出队

您需要维护一个 Dictionary 来保留 UITextField 中存在于 UITableViewCell 中的文本。

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

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

If you are adding a UITextField in a UITableViewCell, you need to take care of cell's state as the cell gets dequeued while scrolling.

You need to maintain a Dictionary to retain text in UITextField which is present in a UITableViewCell.

Refer my github repo for complete solution of having UITextField / UIButton state in a uitableviewcell.

Code was created in Swift 4 with XCode 9.4

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文