我正在创建一个“保存”按钮,用户点击该按钮并使用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!
}
希望有这个问题的解决方案:)谢谢
答案 0 :(得分:1)
保存值时,您需要做的是:
var ary_Values = NSMutableArray()
if UserDefaults.standard.value(forKey: "money") != nil
{
let arr = UserDefaults.standard.value(forKey: "money") as! NSArray
for oldObj in arr
{
ary_Values.add(oldObj)
}
ary_Values.add(self.showLabel.text)
}
UserDefaults.standard.set(ary_Values, forKey: "money")
UserDefaults.standard.synchronize()