gpt4 book ai didi

ios - iOS 9 上的 bundle 设置页面无法按预期工作

转载 作者:可可西里 更新时间:2023-11-01 02:18:12 26 4
gpt4 key购买 nike

我是 IOS 新手。可能我缺少一些概念。我关注了this tutorial用于创建 bundle 设置页面。

设置页面已创建,我可以看到我在设置文件中创建的 4 个设置...好的。

当应用程序 didfinishlaunchwithoptions 时使用此代码启动应用程序时,我试图获取此值:

//Settings:
let standardUserDefaults : NSUserDefaults = NSUserDefaults.standardUserDefaults()
print(standardUserDefaults.boolForKey("Push"))
print(standardUserDefaults.stringForKey("Idioma"))

我没有得到正确的配置值...推送已启用但我总是得到 false,在 Idioma 中为 nil...

更新:我关注了this instructions我生成了一个仅用于存储默认值的 plist 文件,并且知道我获得了默认值,但我仍然遗漏了一些概念,因为我想知道在设备的设置应用程序中是否在我的应用程序之外更改了任何默认设置。我已经测试过在设备设置中取消选中推送值,但我仍然在我的应用程序中获得默认值...我的应用程序如何知道设置中的默认值何时被更改?

var myDict: NSDictionary?
if let path = NSBundle.mainBundle().pathForResource("SettingsDefaults", ofType: "plist") {
myDict = NSDictionary(contentsOfFile: path)
}
if let dict = myDict {
print(dict["Push"])
NSUserDefaults.standardUserDefaults().registerDefaults(dict as! [String : AnyObject])
NSUserDefaults.standardUserDefaults().synchronize()
}

最佳答案

它按我的预期工作,请确保您在调用之前设置值。

    let standardUserDefaults : NSUserDefaults = NSUserDefaults.standardUserDefaults()

standardUserDefaults.setBool(true, forKey: "Push")
standardUserDefaults.setValue("Idioma Value", forKey: "Idioma")

print(standardUserDefaults.boolForKey("Push"))
print(standardUserDefaults.stringForKey("Idioma"))

输出

true
Optional("Idioma Value")

即使在第二次运行时,如果我评论了值设置,它也能正常工作。

关于ios - iOS 9 上的 bundle 设置页面无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34555560/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com