Класс таймера, не увеличивающий счет - PullRequest
0 голосов
/ 19 января 2020

Я не уверен, где я ошибся. Я не вижу ошибок, но счет не увеличивается.

@IBOutlet weak var myTimerLabel: UILabel!

let myTimer = Timer()    

@objc func myTestFunc() {
   var count = 0
   count+=1
   myTimerLabel.text = String(count)
}

override func viewDidLoad() {

             Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector  
            (myTestFunc), userInfo: nil, repeats: true)
     }

Ответы [ 2 ]

2 голосов
/ 19 января 2020

Это не увеличивается, потому что каждый раз, когда myTestFun c () вызывается, он повторно инициализирует переменную count с нулем. Итак, объявите переменную count вне myTestFun c ().

0 голосов
/ 19 января 2020

Вы должны сделать структуру правильно

проверьте это:

@IBOutlet weak var myTimerLabel: UILabel!

let myTimer = Timer()    
var count = 0

//MARK: - view did load
override func viewDidLoad() {
  Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector (myTestFunc), userInfo: nil, repeats: true)
 }

 //TODO:- here implement your funtion 
 @objc func myTestFunc() {
 count+=1
 myTimerLabel.text = String(count)

 // if you want to stop your timer
 myTimer.invalidate()
}

Удачи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...