我有几个UILabel,其中包含某些值。当我切换到另一个viewController并回到原始视图时,我丢失了我的UILabel的值。如何在切换两个viewControllers时保留信息?
答案 0 :(得分:0)
我能提供的最佳答案是使用viewWillDisappear
将标签的值保存到viewController的属性中。但是,信息如何进入标签?最好的办法是,当在标签上以某种方式设置信息时,将值保存到viewController的属性中。然后,您应该有一些代码在viewWillAppear
中填充您的支持属性中的标签。这样,你就不会在你的UI中存储任何状态(这很糟糕),并且你在viewController中只有一个信息/状态流的方向(即你没有将信息输入到标签中,也没有将信息拉出来)。
答案 1 :(得分:0)
标签可能因内存不足警告而被释放。因此,当加载标签时,您必须将值设置为标签。将值设置为viewDidLoad
中的标签。
答案 2 :(得分:-2)
解决问题的简单方法是,将信息保存在NSUserDefault
和标签中。再次切换到视图控制器时,请从NSUserDefault
中的viewWillAppear
获取标签的值。希望它能奏效。