我需要测试应用启动时是否已完成设置页面。 我应该测试什么?这是我尝试过的,但是会打开一个错误。 该值是一个字符串。 我尝试使用ObjectForKey并测试了nil但同样的问题。 我是新手,所以感谢您的帮助。
let settingtest:String = NSUserDefaults.standardUserDefaults().stringForKey("bankid")!
if (settingtest.isEmpty) {
performSegueWithIdentifier("getsettings", sender: self)
}
这适用于iPad Air,但在iPad Retina(两个模拟器)上都失败了
答案 0 :(得分:0)
let settingTest = "questar"
NSUserDefaults.standardUserDefaults().setObject(settingTest, forKey: "Myid")
如果让我们安全地打开您的价值,您可以使用
if let loadedSettingTest = NSUserDefaults.standardUserDefaults().stringForKey("Myid") {
println(loadedSettingTest) // "questar"
} else {
println("empty")
}
或者你可以使用零合并算子" ??"在用户默认值的情况下返回空字符串返回nil:
var loadedSettingTest = NSUserDefaults.standardUserDefaults().stringForKey("Myid") ?? ""
if loadedSettingTest.isEmpty {
println(true)
} else {
println(false) // false
}
NSUserDefaults.standardUserDefaults().removeObjectForKey("Myid")
loadedSettingTest = NSUserDefaults.standardUserDefaults().stringForKey("Myid") ?? ""
if loadedSettingTest.isEmpty {
println(true) // true
} else {
println(false)
}