私はUserDefaultsに保存された値を新しい整数と比較しようとしていますが、それはわかりません。私は、私はそれらを比較することができますので、整数であることをdefaults.object(forKey: "HighScore")
から値を変更するにはどうすればよいUserDefaultsから値のタイプを変更するにはどうすればよいですか?
func setScore() {
let defaults = UserDefaults.standard
let newScore = score
if defaults.object(forKey: "HighScore") != nil {
defaults.set(newScore, forKey: "HighScore")
let highScore = defaults.object(forKey: "HighScore") as! Int
print(highScore)
} else if defaults.object(forKey: "HighScore") < Int(newScore) {
defaults.set(newScore, forKey: "HighScore")
let highScore = defaults.object(forKey: "HighScore") as! Int
print(highScore)
} else {
}
}
?
「UserDefaults」のドキュメントを見ましたか?特定の型を読み取るメソッドがあります。 – rmaddy
https://stackoverflow.com/questions/29930736/making-nsuserdefault-of-type-integer-in-swift – toddg
'else if ...'句には 'defaults.object(forKey: "HighScore") 'はありませんので、あなたの比較はあまり意味がありません。 – Caleb