Я пытаюсь найти лучший способ обновить представление, когда приложение выходит на передний план. Первоначально я предполагал, что viewWillAppear
подойдет, но, похоже, я ошибся.
Я понимаю из других постов, как правильно сделать это с помощью Центра уведомлений:
NotificationCenter.default.addObserver(self, selector: #selector(willEnterForeground), name: UIApplication.willEnterForegroundNotification, object: nil)`
Пока все хорошо; это позволяет мне работать, когда это происходит правильно. Однако возможно, что у меня может быть несколько представлений в стеке, и я не хочу, чтобы происходило много обновлений, если представление фактически не видно.
Я думал, что следующий код позволит мне сделать это:
@objc func willEnterForeground() {
if(self.isBeingPresented) {
updateView()
}
}
Но, к сожалению, isBeingPresented всегда имеет значение false, когда представление восстанавливается из фона.
Есть ли у кого-нибудь предложения о том, как определить, является ли текущее представление «верхним» представлением в стеке?