0
我正在創建一個保存按鈕,其中用戶使用NSUserDefaults
單擊並存儲信息。當用戶再次加載應用程序並點擊顯示按鈕時,應該顯示之前存儲的所有信息。例如如何檢索存儲在NSUserDefaults中的所有值?
星期一用戶將值5倍:20,30,40,50,60
星期二什麼。
週三沒事。
週四同一用戶插入:30,20,50,80個
週五值是:40,20
現在在星期六,當用戶點擊顯示,則數據應顯示: 20,30 40,50,60,30,20,50,80,40,20
到目前爲止,我的編碼是:
@IBOutlet weak var dayTB: UITextField!
@IBOutlet weak var numTB: UITextField!
@IBOutlet weak var showLabel: UILabel! // displays all the values stored
var Money = 0
@IBAction func saveBtn(_ sender: Any) {
Money += 1
var MoneyNumberString:String = String(format: "Dollars:%i", Money)
self.showLabel.text = (string: MoneyNumberString)
let defaults: UserDefaults = UserDefaults.standard
defaults.set(MoneyNumberString, forKey: "money")
defaults.synchronize()
}
@IBAction func showbtnact(_ sender: Any) {
let defaults: UserDefaults = UserDefaults.standard
var money = defaults.value(forKey: "money") as? String
showLabel.text! = money!
}
希望有這個問題的解決方案:)謝謝
我剛編輯我的代碼,因爲這是錯 –
雖然這不是codereview.SE,我有一兩件事來指出:你不應該用大寫字母(關於'var Money = 0')開始變量/常量名稱,除非你絕對確定它們永遠不會被' nil'(關於'money!'),並且在使用setter的時候沒有必要強制展開'showLabel.text!'。只是'showLabel.text = ...'會起作用。另外,如果你不改變屬性,沒有理由將它們聲明爲變量,例如'var money'和'var MoneyNumberString'可以用'let'聲明爲常量。 – xoudini
嗨@xoudini,我能夠獲取記錄,但最後保存的記錄,我想檢索之前保存並顯示的所有信息。它不會按預期顯示所有的值。任何其他方法?謝謝 –