我是Swift的新手,并尝试做一些事情,我遇到了一些我不确定的事情"正常"有关viewWillDisapear事件的行为。
当我环顾四周(阅读谷歌搜索)时,它看起来像viewWillDisapear似乎是放置代码以保存视图中最后一个更改的最佳位置。所以我用一个步进器放一个简单的标签控件来改变它的值并保存到一个NSUserDefaults对象中。事情是在我的代码中获取此事件时text属性为空。调试区域显示对象仍然存在,但没有要探索的属性(而不是值)。这是此视图中存在的UI对象的正常行为吗?我的实际"解决方法"是使用类实例变量来存储该值,而不是依赖于标签的text属性。
我在这里遗漏了什么吗?这里是代码片段:
override func viewWillDisappear(animated: Bool) {
println("view will disappear...")
println(self.lblCodeSpeed.text) // --> blank output?!
var defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(self.lblCodeSpeed.text, forKey: "codeSpeed")
defaults.synchronize()
super.viewWillDisappear(animated)
}