Làm thế nào để tôi dừng lại hẹn giờ của tôi đang chạy? Không giống như một tạm dừng, nhưng dừng lại.Cách dừng NSTimer.scheduledTimerWithTimeInterval
import UIKit
class LastManStandingViewController: UIViewController {
@IBOutlet weak var timeLabel: UILabel!
@IBOutlet weak var timeTextbox: UITextField!
@IBOutlet weak var startButton: UIButton!
@IBOutlet weak var stopButton: UIButton!
var myCounter = 0
var myTimer : NSTimer = NSTimer()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
timeLabel.text = String(myCounter)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func startTimer(){
myTimer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("updateTimer"), userInfo: nil, repeats: true)
println("func startTimer")
}
func stopTimer(){
myTimer.invalidate()
myCounter = 0
timeLabel.text = String(myCounter)
println("func stopTimer")
}
func updateTimer(){
timeLabel.text = String(myCounter++)
println("func updateTimer")
}
@IBAction func startButton(sender: AnyObject) {
startTimer()
}
@IBAction func stopButton(sender: AnyObject) {
stopTimer()
}
}
tôi có thể bắt đầu hẹn giờ, nhưng khi tôi nhấn nút Stop, nó thiết lập lại chính nó, và bắt đầu đếm một lần nữa. Nó không dừng lại.
Làm cho nó hoạt động. Đã xảy ra lỗi với dự án của tôi! Đã sửa lỗi bằng cách xóa nút và thêm lại chúng. Hình như tôi đã có một bản sao hoặc một cái gì đó.
Hãy gửi mã của bạn (chúng tôi không thể kiểm tra nó nếu nó chỉ là một ảnh chụp màn hình). – Moritz
@ericd Đã thêm mã đầy đủ ngay bây giờ. –
Tôi đã sao chép các bit quan trọng của mã của bạn trong một ứng dụng mẫu và tôi thấy không có vấn đề gì, bộ hẹn giờ bắt đầu và dừng lại chính xác. Bạn có chắc bạn không làm gì khác không? [ảnh chụp màn hình thử nghiệm của tôi] (https://www.evernote.com/shard/s89/sh/ca19d729-0a27-421f-bd79-19cfa7c503c8/25d3926720f64e01c47ae0eaaaa7f3ee/deep/0/AppDelegate.swift.png) – Moritz