, как я упоминал в вашем разделе комментариев. когда ваше приложение находится в фоновом состоянии, вы не должны постоянно обновлять свой интерфейс, так как это бессмысленно. когда пользователь снова нажмет на ваше приложение, ваш контроллер представления вызовет функцию viewDidAppear(animated)
. В этой функции вы можете проверить состояние таймера, а затем при необходимости представить контроллер второго вида. Я выложу пример кода ниже
class FirstViewController : UIViewController {
var timerExpiration = false
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if timerExpiration {
let vc = SecondViewController()
present(vc, animated: true, completion: nil)
}
}
}
class SecondViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
}