Я как бы на стене, что делать, программа работает, но timer.invalidate() не работает? Любые советы приветствуются.
Я работал с этой программой в прошлом и работал над ней, а timer.invalidate() работал безупречно. Я не думаю, что это связано с тем, что я включил его в функцию, потому что, прежде чем он не работал, когда я просто набрал "timer.invalidate()" вместо "stop()"
Всякий раз, когда я нажимаю кнопку "Отмена" на симуляторе iOS, он просто сбрасывает его обратно на 0, но продолжает подсчитывать.
Спасибо заранее.
import UIKit
class ViewController: UIViewController {
var timer = NSTimer()
var count = 0
@IBOutlet weak var timeDisplay: UILabel!
@IBAction func playButton(sender: AnyObject) {
//play button
var timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("result"), userInfo: nil, repeats: true)
}
@IBAction func resetTimer(sender: AnyObject) {
//cancel button
stop()
count = 0
timeDisplay.text = "0"
}
@IBAction func pauseButton(sender: AnyObject) {
stop()
}
func result() {
count++
timeDisplay.text = String(count)
}
func stop () {
timer.invalidate()
}
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.
}
}