我目前正在Swift中编写一个天气应用程序。当我从一个视图控制器移动到另一个视图控制器时,每个视图控制器的内容(例如我的文本框条目)都会重置为原始状态。我看到有人遇到同样的问题here on StackOverflow,但他们使用Objective-C。任何关于如何在Swift 2中做到这一点的指针?故事板和保留每个控制器中的数据(Swift)
编辑:
我已经尝试了以下加载它:
let defaults = NSUserDefaults.standardUserDefaults()
override func viewDidLoad() {
super.viewDidLoad()
let savedDewPoint = defaults.integerForKey("savedDewPoint")
dewPointLabel?.text = "\(savedDewPoint)º"
loadUserSettings()
retrieveMoreInformation() // The refresh function for this view controller.
}
而且,这里是我来存储它的代码:
override func viewDidAppear(animated: Bool) {
let savedDewPoint = defaults.integerForKey("savedDewPoint")
defaults.setObject(dewPointLabel?.text, forKey: "savedDewPoint")
}
它存储,但它没有得到值并显示它。我尝试过注释掉retrieveMoreInformation()
,试图停止首先从互联网上获取天气信息,并试图加载存储的信息。
我也尝试使用viewWillDisappear
尝试存储它,并且这也没有做任何事。
您设计的哪个部分负责(提供或)保存视图控制器的内容? – 2016-01-23 18:08:07
你有代码viewWillAppear或viewDidAppear哪些设置文本字段? – Russell
@PetahChristian没有 - 这就是问题所在,我需要弄清楚如何实现它。 – Insleep