Как определить, какой UIScene последний раз взаимодействовал с пользователем в iOS 13 - PullRequest
1 голос
/ 17 февраля 2020

У меня есть структура, которая на основе действий пользователя показывает предупреждающие сообщения, добавляя веб-вид сверху текущего вида сверху. До iOS 13 и поддержки нескольких сцен я использую для получения вида сверху, используя следующий код

UIViewController *topController = [UIApplication sharedApplication].keyWindow.rootViewController;

        while (topController.presentedViewController) {
            topController = topController.presentedViewController;
        }

, а затем добавляю веб-представление поверх него. Но теперь, поскольку iPad может иметь несколько сцен, приведенный выше код всегда отображает только последнюю созданную сцену в качестве вида сверху. Будучи фреймворком, я хотел дать приложению свободу решать, на какой сцене он хотел бы показать сообщение, идентифицируя сцену, которая выполняла это действие, или отслеживая, какая сцена выполняла последнее действие в фреймворке.

В основном L oop через все сцены в активном состоянии переднего плана и совпадает с некоторым идентификатором, чтобы определить, к какому веб-просмотру сцены следует добавить.

Любая помощь будет оценена.

...