Я хочу написать некоторый код для выталкивания из текущего контроллера представления обратно в корневой контроллер представления.Достаточно запутанно, я нашел многочисленные ответы на этот счет со всеми видами синтаксиса.(Я предполагаю старые ответы в Objective C или другой версии Swift ...) Вот самый простой синтаксис, который в настоящее время работает для меня в моем AppDelegate:
let navigationViewController = self.window?.rootViewController as! UINavigationController
[navigationViewController .popToRootViewController(animated: true)]
Я получил это далеко, просмотрев этоответ: https://stackoverflow.com/a/23027260/8887398 Его синтаксис был не совсем понятен, и я думаю, что это старый синтаксис с 2012 года, поэтому мне пришлось немного его изменить, но он работает с моим кодом выше.
Вопрос: Я не совсем понимаю, что происходит во 2-й строке кода.Конечно, я понимаю, что он возвращается к корневому контроллеру представления, но я вообще не понимаю синтаксис.Наиболее запутанным является то, что код окружен парой скобок [], которые я совсем не понимаю.Затем popToViewController начинается с точки '.', Которая отличается от ответа, который я связал.Я привык использовать "."чтобы получить доступ к свойствам объекта, но вот он просто используется автономно без чего-либо с левой стороны.
Этот код, кажется, функционирует правильно для меня, но какие бесчисленные версии синтаксиса и способов выскочитьВернувшись к контроллеру корневого представления, который я нашел в Интернете, я понятия не имею, правильно ли я делаю или как оно работает.Все, что я знаю, это «это работает прямо сейчас».Пожалуйста, помогите мне понять этот код.