Swift NSUserDefaults valueForKey错误
我试图在一个简单的游戏中保存一个高分。我是swift 2的新手,不知道自己做错了什么。我得到的错误是“类型为'int'的值没有'valueForKey'的成员。这是我上次尝试失败时的代码Swift NSUserDefaults valueForKey错误,swift,swift2,nsuserdefaults,Swift,Swift2,Nsuserdefaults,我试图在一个简单的游戏中保存一个高分。我是swift 2的新手,不知道自己做错了什么。我得到的错误是“类型为'int'的值没有'valueForKey'的成员。这是我上次尝试失败时的代码 var highScoreDefault = NSUserDefaults.standardUserDefaults() if(highScoreDefault.valueForKey("highScore") != nil){ highScore = highScore.valueF
var highScoreDefault = NSUserDefaults.standardUserDefaults()
if(highScoreDefault.valueForKey("highScore") != nil){
highScore = highScore.valueForKey("highScore") as NSInteger! //error here
}
newFunc
score += 1
if (score > highScore){
highScore = score
var highScoreDefault = NSUserDefaults.standardUserDefaults()
highScoreDefault.setValue(highScore, forKey: "highScore")
highScoreDefault.synchronize()
}
highscoreLbl.text = "\(highScore)"
试试这个:
let highScoreDefault = NSUserDefaults.standardUserDefaults()
//Set
highScoreDefault.setInteger(yourInt, forKey: "intKey")
highScoreDefault. synchronize()
//Get
highScoreDefault.integerForKey("intKey")
您必须像这样保存它:
NSUserDefaults.standardUserDefaults().setInteger(highScore,forKey:“highScore”)
然后像这样检索它:var highScore:Int=NSUserDefaults.standardUserDefaults().IntegerWorkey(“highScore”)
在NSUserDefault中设置值非常简单
NSUserDefaults.standardUserDefaults().setInteger(yourScore, forKey: "highScore")
NSUserDefaults.standardUserDefaults().synchronize()
苹果建议只在特殊情况下调用synchronize(),例如当应用程序即将退出时
synchronize()方法,该方法在定期
间隔,使内存缓存与用户的默认值保持同步
数据库
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setValue(value, forKey: "highScore")