iOS Playgrounds 似乎有一个奇怪的问题NSUserDefaults
总是返回nil
而不是实际值。
在 iOS Playground 中,最后一行错误地返回nil
.
import UIKit
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject("This is a test", forKey: "name")
let readString = defaults.objectForKey("name")
在 OSX Playground 中,最后一行正确返回“This is a test”。
import Cocoa
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject("This is a test", forKey: "name")
let readString = defaults.objectForKey("name")
知道这是为什么吗?漏洞?
这并不是一个真正的错误...... NSUserDefaults 与 iOS 沙箱环境相关。 Playgrounds 不能在此环境中运行。这就是为什么您无法将文件写入磁盘的原因。如果您在通过模拟器或设备运行时在应用程序中运行此代码,您将可以访问沙箱环境,并且 NSUserDefaults 将返回正确的引用。我确实看到我在操场上得到了正确的参考并且可以设置和获取值,所以这里肯定还有其他事情发生。由于本质原因,我只是不会依赖这种方法来测试此类功能。
请注意当我同步商店时会发生什么。
由于没有什么可以坚持的事实,价值就变成了零。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)