gpt4 book ai didi

ios - UICollectionView 不保留 UITextfield 输入

转载 作者:行者123 更新时间:2023-11-30 11:29:29 25 4
gpt4 key购买 nike

请耐心听我说,这是一个很难描述的问题。我有两个 UICollectionViews:MainCollectionView 和 NestedCollectionView。 MainCollectionViewCell 包含一个 UILabelNestedCollectionView。反过来,NestedCollectionViewCell 包含 UILabelUITextfield。是否显示 UILabelUITextfield 取决于 NestedCollectionViewCell 的内容。

我的问题如下:当用户选择 NestedCollectionViewCell 并将内容设置为显示 UITextfield 时,会显示用于用户输入的键盘。这是预期的结果。

但是,当用户输入一些文本然后滚动到 MainCollectionView 中的另一个单元格时,NestedCollectionView 会重置,并且 UITextfield.text设置为默认值。换句话说,输入的文本不会被保留。

有什么建议可以解决这个问题吗?

最佳答案

您在UITextField中输入的文本会丢失,因为每当您滚动UITableView时,它都会自动销毁不再可见的单元格,这也是更好的内存管理所必需的否则你的应用程序将消耗更多内存。因此,当您返回到之前的单元格时,您已经新生成了 UITalbeViewCell。所以你的数据丢失了,因为你没有持久化它。

因此,作为解决方案,每当您的 textFieldDidEndEditing 调用或每当您关闭键盘时,将您的 UITextField 值存储到某个对象中,并在您的 cellForRowAtIndexPath 方法中检查对象是否具有值,然后将其填充到您的 UITextField

通过这种方式,您始终可以保留之前输入的值。

关于ios - UICollectionView 不保留 UITextfield 输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50402775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com