简体   繁体   English

既然可以使用 NSUserDefaults,为什么还要使用 singleton 在多个视图控制器之间共享数据?

[英]Why use a singleton to share data between multiple view controllers when you can use NSUserDefaults?

Any thoughts on this?对此有什么想法吗?

Thanks for shedding some light on this.感谢您对此有所了解。

NSUserDefaults is ready made database provided to us. NSUserDefaults是提供给我们的现成数据库。 If we use it, we are saving things in database and making fetch operation.如果我们使用它,我们将把东西保存在数据库中并进行提取操作。

If you want your data to be persistent then use NSUserDefaults and/or your own database.如果您希望您的数据持久化,请使用NSUserDefaults和/或您自己的数据库。

If you want to share data globally and dont want it to be persistent then use singleton class.如果您想在全球范围内共享数据并且不希望它persistent ,请使用singleton class。

It is based on our requirement if we want a shared class (singleton class) or a database (NSuserDefaults).如果我们想要一个共享的 class(单例类)或数据库(NSuserDefaults),这取决于我们的要求。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在视图控制器之间共享数据的单例或委托 - Singleton or delegation for shared data between view controllers 在两个视图控制器之间更新NSUserDefaults - update NSUserDefaults between two view controllers 如何使用 Singleton 来允许各种视图控制器之间的通信? - How can a Singleton be used to allow communication between various view controllers? 如何在视图控制器之间共享常用方法? - How can I share common methods between view controllers? 为什么要使用许多视图控制器来制作应用程序? - Why use many view controllers to make app? 如何在多个视图控制器之间全局共享数据 - How to share data globally among multiple view controllers 开始将NSUserDefaults用于自定义类时,这一次是要移至Core Data吗? - when starting to use NSUserDefaults for a custom classes is this time to move to Core Data? 如何创建adWhirl Singleton以在所有视图控制器中使用1个添加标题 - How to create an adWhirl Singleton to use 1 add banner across all view controllers 如何使用委托方法在两个视图控制器之间传递对象? - How to use delegate methods to pass objects between two view controllers? 如何将一个xib与多个视图控制器一起使用? - How do I use one xib with multiple view controllers?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM