Я работаю над простым таймером обратного отсчета (Swift). Когда время достигнет «0», я хочу показать alertView. Для этого я использую JSSAlertView pod.Попытка представить <JSSAlertView.JSSAlertView ... который уже представляет
Все работает хорошо, но с этим alertView Я также получаю это: Предупреждение: Попытка представить, на котором уже представляя
Как я могу это исправить?
Я не использую файл раскадровки или Xib. Все было написано программно.
Я искал различные решения, найденные с помощью Google, - ничего не работало для меня.
P.S. Я прикрепил свой код ниже. У меня есть два ViewControllers:
Первый ViewController имеет кнопки пуска:
class FirstViewController: UIViewController {
func startButtonCLicked(_ button: UIButton) {
let controller = SecondViewController()
present(controller, animated: true)
}
}
Второй ViewController имеет функцию таймера и alertView:
class SecondViewController: UIViewController {
func updateTimer() {
if seconds > 0 {
print(seconds)
seconds -= 1
timerLabel.text = String(Timer.timeFormatted(seconds))
} else {
let alertview = JSSAlertView().show(self,
title: "Hey",
text: "Hey",
buttonText: "Hey",
color: UIColorFromHex(appColor.hexMainOrangeColor, alpha: 1))
alertview.setTextTheme(.light)
}
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if timer.isValid == false {
timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(SecondViewController.updateTimer) , userInfo: nil, repeats: true)
}
}
}
Ура!
не знаю с JSAlertview, но http://stackoverflow.com/questions/36450931/countdown-in-uialertcontroller может помочь –
Спасибо, Майк Алтер, но это немного другое ... Мой друг просто помог мне решить эту проблему. – Jonagold