首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用UserDefaults registerDefaults()

如何使用UserDefaults registerDefaults()
EN

Stack Overflow用户
提问于 2015-08-14 20:49:39
回答 2查看 3.1K关注 0票数 3

我到处找都找不到关于如何使用registerDefaults()的解释。

每一篇询问如何设置默认值的帖子都会回答“使用registerDefaults()",我遇到的一个小问题是我不知道如何使用registerDefaults()。

谁能告诉我到底要写什么代码,把它放在哪里?

我的问题:我有5个值(Int),它们需要有一个特定的默认值,但稍后可以由用户更改。我查过Xcode文档,youtube和google,都找不到答案。

EN

回答 2

Stack Overflow用户

发布于 2015-08-14 20:52:26

只需传递键值对的字典:

代码语言:javascript
复制
NSUserDefaults.standardUserDefaults().registerDefaults([
    "SomeKey" : 123,
    "SomeArrayKey" : [1, 2, 3, 4, 5]
])
票数 8
EN

Stack Overflow用户

发布于 2015-08-14 21:29:40

@Kirsteins已经发布了代码,但这里是想法。

RegisterDefaults在NSUserDefaults中为一个或多个键创建起始值,如果您愿意,也可以称之为"default defaults“。

您希望在程序调用的早期调用registerDefaults,以便确保在尝试从默认值中读取任何值之前都会注册默认值。

我通常将它们放在应用程序委托的initialize (类)方法中,因为初始化方法甚至在应用程序委托被实例化之前就被调用了。

只需为您想要作为默认值的键/值对创建一个字典,然后调用NSUserDefaults.standardUserDefaults().registerDefaults

把所有这些放在一起,你的代码(在你的应用委托类中)可能是这样的:

代码语言:javascript
复制
class func initialize()
{
  let initialDefaults: NSDictionary = 
    ["firstKey": true,
     "answerToLifeKey": 42,
     "airspeedVelocityKey": "European or African"
    ]
  NSUserDefaults.standardUserDefaults().registerDefaults(initialDefaults)
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32010543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档