Ios 加载并继续添加整数Xcode Swift
我可以保存一个整数并使用NSUserdeafaults加载它,但当我加载该数字并尝试继续添加该数字时,它从0开始 示例:我按下按钮7次,然后切换到另一页。我返回并单击“加载”按钮,它将在第7天加载。当我再次单击它时,它会显示1 这是我的货币代码: //要钱Ios 加载并继续添加整数Xcode Swift,ios,xcode,swift,nsuserdefaults,Ios,Xcode,Swift,Nsuserdefaults,我可以保存一个整数并使用NSUserdeafaults加载它,但当我加载该数字并尝试继续添加该数字时,它从0开始 示例:我按下按钮7次,然后切换到另一页。我返回并单击“加载”按钮,它将在第7天加载。当我再次单击它时,它会显示1 这是我的货币代码: //要钱 @IBAction func MoneyPress(sender: AnyObject) { Money += 1 var MoneyNumberString:String = String(format: "Dollars
@IBAction func MoneyPress(sender: AnyObject) {
Money += 1
var MoneyNumberString:String = String(format: "Dollars:%i", Money)
self.DollarsLabel.text = (string: MoneyNumberString)
let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(MoneyNumberString, forKey: "money")
defaults.synchronize()
}
加载代码:
@IBAction func LoadTestButton(sender: UIButton) {
let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
var money = defaults.valueForKey("money") as? String
DollarsLabel.text! = money!
}
如果您知道如何使其继续增加该数字,请提供帮助
完整代码:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var MoneyButton: UIButton!
@IBOutlet weak var OptionButton: UIButton!
@IBOutlet weak var FeelingLuckyButton: UIButton!
@IBOutlet weak var TrophiesButton: UIButton!
@IBOutlet weak var DollarsLabel: UILabel!
@IBOutlet weak var BuyNowOne: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
var Money = Int(0)
//Press for Money
@IBAction func MoneyPress(sender: AnyObject) {
Money += 1
var MoneyNumberString:String = String(format: "Dollars:%i", Money)
self.DollarsLabel.text = (string: MoneyNumberString)
let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(MoneyNumberString, forKey: "money")
defaults.synchronize()
}
@IBAction func LoadTestButton(sender: UIButton) {
let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
var money = defaults.valueForKey("money") as? String
DollarsLabel.text! = money!
}
}
问题是,当您实际希望将货币设置为包含NSUserDefaults中的值时,您将货币设置为0。要在LoadTestButton方法中执行此操作,请尝试以下操作:
@IBAction func LoadTestButton(sender: UIButton) {
let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
var money = defaults.valueForKey("money") as? String
DollarsLabel.text! = money!
// Set "Money" to contain the numbers in your "money"
// string converted to an Int
Money = money!.stringByTrimmingCharactersInSet(NSCharacterSet.decimalDigitCharacterSet().invertedSet).toInt()!
}
您最初在哪里设置货币变量?这是一个整数,用于计算点击次数。是的,但您第一次设置它是什么时候?我假设您希望它等于存储在NSUserDefaults中的值…您可以发布该代码吗?我在上面发布了完整的代码,它告诉我要放置!最后,当我把它放进去时,它告诉我再放一个,然后它告诉我删除那个,依此类推。我该怎么解决这个问题?你可能把它!在错误的地方。一秒钟。。。我会更新的。