2014-09-03 16 views
0

這裏我有兩個按鈕「開始」和「停止」我的計時器的代碼。有步進爲我的計時器設置值,但是當我使用步進器設置任何值,然後按開始按鈕計時器從一開始就運行,而不是從我設置的值運行。斯威夫特:想要定時器從值開始我不是從一開始設置

import UIKit 

class ViewController: UIViewController { 

    var timer = NSTimer() 
    var counter = Int() 


    @IBOutlet weak var valueLabel: UILabel! 
    @IBOutlet weak var stepper: UIStepper! 



    @IBAction func changeValueStepper(sender: UIStepper) { 

     valueLabel.text = Int(sender.value).description 
     timer.invalidate() 


    } 

    @IBAction func startTimerButton(sender: UIButton) { 

     timer.invalidate() 
     timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "update", userInfo: nil, repeats: true) 



    } 

    @IBAction func stopButton(sender: UIButton) { 

     timer.invalidate() 


    } 

    func update() { 

     valueLabel.text = String(counter++) 
    } 



    override func viewDidLoad() { 
     super.viewDidLoad() 

    } 
+0

'changeValueStepper()'只設置標籤文本,但不設置計數器。 – 2014-09-03 21:19:31

回答

0

changeValueStepper只更新標籤文本,但不是你的計數器變量。 我在你的代碼中看不到counter已初始化。

+0

感謝您的幫助,我已經解決了我的問題。 – 2014-09-04 07:04:45