2015-05-07 21 views
0

我試圖從文本字段保存輸入的字符串並使用NSUserDefaults加載保存的值。當我運行我的代碼時,當我點擊「saveScore」按鈕時,應用程序崩潰。我的錯誤消息是「以未捕獲的異常終止」,但我找不到實際的錯誤。未捕獲異常保存字符串NSUserDefaults [Swift]

class ScoreViewController: UIViewController { 

    @IBOutlet weak var loadDataButton: UIButton! 
    @IBOutlet weak var mathScore: UITextField! 

    @IBOutlet weak var testMath: UILabel! 
    @IBOutlet weak var saveScore: UIButton! 

    @IBOutlet weak var displayDataLabel: UILabel! 


    override func viewDidLoad() { 
     super.viewDidLoad() 

    } 

    @IBAction func saveDataClicked(sender: AnyObject) { 
     saveData() 
    } 


    func saveData() { 

     let defaults = NSUserDefaults.standardUserDefaults() 

     let latestScore = mathScore.text 

     defaults.setObject(latestScore, forKey: "12/1") 

     defaults.synchronize() 

    } 


    @IBAction func loadDataClicked(sender: AnyObject) { 
     var defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults() 

     if let firstNameIsNotNill = defaults.objectForKey("12/1") as? String { 
      self.displayDataLabel.text = defaults.objectForKey("12/1") as String 
     } 
    } 
+0

看來問題不在於NSUserDefault,我運行你的代碼。 – Amit89

+3

我應該如何解決我的問題? –

+0

爲什麼你把所有弱IBOutlets?讓他們堅強並嘗試。 – Amit89

回答

0

重新啓動XCode解決了問題!