我还比较陌生,慢慢走着。
下面是我的代码:
let defaultName = UserDefaults.standard
override func viewDidLoad() {
super.viewDidLoad()
let getTheme = defaultName.integer(forKey: "theme") as Int
if getTheme == 1{
self.performSegue(withIdentifier: "darkVC", sender: self)
}else
if getTheme == 2{
self.performSegue(withIdentifier: "lightVC", sender: self)
} else {
//Do nothing
}
}
@IBAction func theme_Selection(_ sender: UIButton) {
defaultName.set(sender.tag, forKey: "theme")
}
Viewcontroller:
我正在尝试在UserDefaults中保存用户选择(深色或浅色)并选择到相应的Viewcontroller。不幸的是,它确实保存了UserDefault并继续返回此Viewcontroller供用户选择。
我已将按钮标记为1和2,并将它们分组在@IBAction func theme_Selection
任何想法,我在这里想念什么? 预先感谢任何解决方案。
答案 0 :(得分:2)
不可能在performSegue
中viewDidLoad
。该视图尚未附加到窗口。尝试将您的实现移至viewDidAppear
。