Dan*_*iel 9 xcode nsuserdefaults ios swift swift-playground
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")
Run Code Online (Sandbox Code Playgroud)
在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")
Run Code Online (Sandbox Code Playgroud)
知道为什么会这样吗?错误?
这不是一个真正的错误...... NSUserDefaults与iOS沙箱环境有关.游乐场不在这种环境中运行.因此,为什么您将无法将文件写入磁盘.如果您在通过模拟器或设备运行时在应用程序中运行此代码,则您将可以访问沙箱环境,NSUserDefaults将返回正确的引用.我确实看到我在游乐场得到了一个适当的参考,并且可以设置和获取值,所以这里必须有其他东西.由于性质原因,我不会依赖于这种方式来测试这种类型的功能.
请注意我同步商店时会发生什么.

由于没有任何东西可以持续存在,因此该值变为零.
| 归档时间: |
|
| 查看次数: |
2678 次 |
| 最近记录: |