以下のようにゲームの過去の最高得点をUserDefaultから取得するコードを書いています。
現在**if UserDefaults.standard.object(forKey: "topScore") != nil {**の部分でクラッシュしてしまう状況です。
Swift
1 2lazy var bestScore: Int = { 3 return getBestScore() 4 }() 5 6private func getBestScore() -> Int { 7 if UserDefaults.standard.object(forKey: "topScore") != nil { 8 let topScore:[Int] = UserDefaults.standard.array(forKey: "topScore") as! [Int] 9 return topScore.first! 10 } else { 11 bestScoreLabel.isHidden = true 12 return 0 13 } 14 }
エラーは以下のようなものが出ています。調べてみると無限ループになっている際のエラーみたいなんですが、コードを読み返してもどこが原因なのかがわかりませんでした。
error
1Thread 1: EXC_BAD_ACCESS (code=2, address=0x16b4bbff8)
回答2件
あなたの回答
tips
プレビュー