这应该很容易,但是我还无法弄清楚。

情况

视图控制器1(文本字段:text_field_1)

视图控制器2(文本字段:text_field_2)

从视图控制器1到视图控制器2之间存在“显示序列”,还包括导航控制器。

问题

在veiw控制器1中,用户在“ text_field_1”中键入内容,

然后搜索到视图控制器2,用户在“ text_field_2”中输入内容,

然后使用导航控制器返回到视图控制器1,将保留“ text_field_1”中键入的文本

然后再次搜索视图控制器2,但不会保留在“ text_field_2”中键入的文本

我想要实现的目标

有什么办法可以在“ text_field_2”中保留文本?

最佳答案

弹出视图控制器2后,这是正常的行为原因,它被释放。针对您的问题有几种解决方案:


创建一个委托以在VC2文本字段文本更改时通知VC1,将该值存储在VC1中,然后在再次触发show segue时将该值传递给VC2。在您的VC2 viewDidLoad:方法中,检查此值是否为nil;如果不是,请设置您的text_field_2默认文本。
在VC2中,将文本字段文本保存到viewWillDisappear:(例如)方法中的NSUserDefaults中,并在加载时检查是否可以从NSUserDefaults中检索值。如果是,请设置您的text_field_2文本值。


让我知道您是否需要解决方案1或2的源代码示例。

关于ios - 保留Textview状态,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29210474/

10-13 08:50