Comments 10
Если наш экран должен содержать переход на много разных экранов, то код становится громоздким:
Есть более элегантный способ 12:20
Есть разные способы, для элегантного применения которых надо решить разные заморочки. Те же вопросы конфигурации и управления памятью.
Спасибо за статью. Очень интересный и неожиданный ход с навигацией по SwiftUI, используя UIKit. Расширяет сознание)
По теме статьи. У Apple в UIKit есть реализация шаблона "Команда": селекторы, таргеты, responder chain, first responder. Цель шаблона в том, чтобы доставлять команды (в том числе на навигацию) от источника до исполнителя, т.е.от условной кнопки для пользователя до условного контейнер-контроллера (например, UINavigationController), который уже и осуществит навигацию (в данном примере - push).
По сути, это системная реализация вашего Навигатора.
Ну, а коли он у вас все равно работает с UIKit, то не пробовали ли вы заменить Вашу реализацию Навигатора на системную через responder chain, first responder, таргеты и селекторы?
5 лет прошло. Интересно, как выглядит в итоге Ваша навигация. Хотим и уже попробовали навигацию через UIKit (Свифт у нас старенький по объективным в РФ событиям, использовать последние версии не можем), видим в ней потенциал, но не хотим реализовывать Навигатор, т.к.кажется, что в системе это уже все есть. Хочется скорректировать наше направление, во избежание...
Про способы реализации навигации до iOS 16 рассказывала здесь:
https://www.youtube.com/watch?v=kJyg4CIspAE
Адаптируем существующее бизнес-решение под SwiftUI. Часть 4. Навигация и конфигурация