在我的应用程序中,我使用以下代码保存 key :
func saveKey(){
var xmineSpillere = mineSpillere
var defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(xmineSpillere, forKey: "YourKey")
}
但是我如何检查 key 是否存在呢?我想要这样的代码:
if key("YourKey") exists {
println("key exists")
}
else {
println("does not exist")
}
我怎样才能在 Swift 中做这样的事情?
最佳答案
首先,每次将任何内容保存到 NSUserDefaults
时,您都需要调用 synchronize()
方法将对持久域的任何修改写入磁盘并将所有未修改的持久域更新为磁盘上的内容。
func saveKey(){
var xmineSpillere = mineSpillere
var defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(xmineSpillere, forKey: "YourKey")
defaults.synchronize()
}
The
synchronize
method is automatically invoked at periodic intervals, use this method only if you cannot wait for the automatic synchronization (for example, if your application is about to exit) or if you want to update the user defaults to what is on disk even though you have not made any changes.
然后可以通过以下方式达到任意值:
if let key = NSUserDefaults.standardUserDefaults().objectForKey("YourKey"){
// exist
}
else {
// not exist
}
希望对你有帮助
关于swift - 检查 NSUserDefaults 键是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31598871/