2015-01-04 4 views
0

높은 점수를 얻으려고합니다. 점수와 높은 점수를 올리고 두 점수를 비교하여 점수가 새로운 최고 점수로 설정되어야하는지 확인합니다. 점수가 음수 일 때는 잘 작동하지만 숫자가 양수이지만 현재의 높은 점수보다 낮거나 높은 점수보다 크면 두 숫자를 합치는 것처럼 보입니다. 그것은 또한 2에서 1을 뺀 것으로 보인다? 무슨 일이 일어나는 지 모르겠습니다. 도와 주셔서 감사합니다!스위프트를 사용하여 최고 기록 저장 및로드

높은 점수보기의 viewDidLoad (뷰의 코드 만) :

override func viewDidLoad() { 

    //Load Score 
    let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults() 
    var score = defaults.valueForKey("Score")?.integerValue ?? 0 
    defaults.synchronize() 
    Score = score 

    //Load Highscore 
    let SecondDefaults: NSUserDefaults = NSUserDefaults.standardUserDefaults() 
    var highscore = SecondDefaults.valueForKey("Highscore")?.integerValue ?? 0 
    SecondDefaults.synchronize() 
    Highscore = highscore 

    //Set Score Text 
     ScoreString = String(Score) 
     Scorelabel.text = ScoreString 

    //Update Highscore if Score is bigger 
    if Score > Highscore { 

     //Set Highscore to Score 
     Highscore += Score 

     //Save Highscore 
     let SecondDefaults: NSUserDefaults = NSUserDefaults.standardUserDefaults() 
     SecondDefaults.setObject(Highscore, forKey: "Highscore") 
     SecondDefaults.synchronize() 

     //Set Highscore Text 
     HighscoreString = String(Highscore) 
     HighscoreLabel.text = HighscoreString 

     NewHighscoreLabel.text = "New Highscore" 
    } 
    //Set Highscore Text if Score is smaller 
    else if Highscore >= Score { 
    HighscoreString = String(Highscore) 
    HighscoreLabel.text = HighscoreString 
    } 
}} 
+0

(이 그것을 주도 수도 있지만) 그것은 버그가 해결되지 않습니다하지만 오히려 믹싱 및 매칭보다 항상 lowercaseVariableNames''에 충실해야한다 (당신이 사용하는'UppercaseVariableNames' 멤버 변수는?). 여기서'Score'라는 변수와'score'라는 변수가 있습니다. 이것은 문제를 요구하고 있습니다. Swift의 표준은 대문자로 시작하는 유형과 소문자로 시작하는 변수의 이름을 지정하는 것입니다. 유형에 값을 할당 할 수 없기 때문에 실수로 변수의 클래스 이름을 입력 할 수는 없지만 다른 변수에 대해 하나의 변수를 입력 할 수는 있습니다. –

답변

1

문제는이 코드입니다 : 당신은 다음 HighScoreScore를 추가 다시는 HighScore에 할당하는

Highscore += Score 

. 변경 것과 :

Highscore = Score 
+0

나 한테 멍청한 실수. 어쨌든 고마워. 나는 그것이 나를 허용 할 때 몇 분 안에 바로 표시 할 것입니다. – hAPPy

+0

@hapPy : 천만에요. 해피 코딩 –