如何在swift中存储计数器的开始和停止数字

时间:2017-12-15 05:25:26

标签: ios swift

我创造了一个效果很好的计数器。我现在要做的是获取"停止"按下按钮,每次启动和停止计数器时,它都会添加到现有值中。 我已经使用用户默认值在我的应用程序中存储文本字段项目我只是不确定如何存储此计数器值。

如果有帮助,请参阅我的计数器代码以供参考。

// Start
@IBOutlet weak var startCoin: UIButton!
// Coins Label
@IBOutlet weak var countLabel: UILabel!
// Count Guts
var count:Int = 0
var counting:Bool = false
var timer:Timer = Timer()

// Start
@IBAction func startCoin(_ sender: Any) {
    if counting {
        // Stop Counting
        startCoin.setTitle("Start", for: .normal)
        timer.invalidate()
        counting = false
    } else if !counting {
        // Start Counting
        startCoin.setTitle("Stop", for: .normal)
        // Start timer
        timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector (counter), userInfo: nil, repeats: true)
        counting = true
    }
}

@objc func counter() -> Void {
    count += 1
    countLabel.text = "Coins: 0." + String(count)
}

1 个答案:

答案 0 :(得分:1)

为了存储您的count:Int,您可以轻松组合Computed PropertiesUserDefaults,请查看以下示例:

var count:Int {
  get {
    return UserDefaults.standard.integer(forKey: "count") ?? 0
  }
  set {
    UserDefaults.standard.set(newValue, forKey: "count")
    countLabel.text = "count: \(newValue)"
  }
}