什么是使用UserDefaults保存数据的适当事件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是使用UserDefaults保存数据的适当事件?相关的知识,希望对你有一定的参考价值。
我是ios新手。我有一个视图控制器和一些数据对象。我想在视图控制器消失之前将数据保存到UserDefaults。在android中,我使用了“ On stop”事件,依此类推。 ios中适当的事件是什么?
我曾考虑过在每次更改时保存数据(didSet),但是我的数据是由50-100个元素组成的数组,因此,每次更改时都保存它不是一个好主意。另一方面,我希望无论如何都要保存我的数据-如果应用程序被销毁等等。
答案
您可以在代码中使用此功能
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(true)
UserDefaults.standard.set(true, forKey: "example")
}
如果应用将终止:例如,用户关闭应用在AppDelegate
func applicationWillTerminate(_ application: UIApplication) {
bgTask = application.beginBackgroundTask(withName:"Flink_logOut", expirationHandler: {() -> Void in
// Do something to stop our background task or the app will be killed
}
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}
另一答案
您需要在视图控制器中重写此功能
override func viewDidDisappear(_ animated: Bool) {
// save data here
}
以上是关于什么是使用UserDefaults保存数据的适当事件?的主要内容,如果未能解决你的问题,请参考以下文章
如何将两个 UITextView 中的数据保存到 UserDefaults
使用 struct id 将收藏夹保存到 UserDefaults