Привет, это мое первое приложение, и я пытаюсь понять, как выполнить эту простую задачу, но перегружен информацией, и я чувствую, что может быть более простой способ сделать это.
Я пытаюсь создать генератор случайных слов, который будет выбирать из массива слов в случайные промежутки времени. Время должно измениться после срабатывания таймера. Таймер может продолжать работать все время, пока приложение включено.
вот мой код:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var label: UILabel!
@objc weak var paraTimer: Timer?
override func viewDidLoad() {
super.viewDidLoad()
let randomNum = Int.random(in: 1..<5)
paraTimer = Timer.scheduledTimer(timeInterval: TimeInterval(randomNum), target: self, selector: #selector(runTimedCode), userInfo: nil, repeats: true)
}
/*
This invalidates my timer, not sure if I need to start a new timer now or if I can reset this?
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
paraTimer?.invalidate()
*/
@objc func runTimedCode() {
let array = ["Apple", "Banana", "Pear" ]
label.text = array.randomElement()
}
}
Так что проблема, которую мне нужно решить, это то, что она выберет случайное число от 1 до 5, а затем не выберет новое число и просто продолжайте работать каждые х секунд. Также я должен сделать недействительным таймер или оставить его выключенным?
Спасибо. Как я уже сказал, я впервые работаю над приложением, которое не просто следует прямому руководству.