Я пытаюсь лучше понять создание сложных навигаций с помощью UINavigationController.Пожалуйста, если я ошибаюсь в каком-либо предположении (что так возможно), просто дайте мне знать.
Насколько я вижу, кажется, что UINavigationController специально разработан для достижения такой навигации, когда нажатие новогоКонтроллер обеспечивает более глубокую детализацию данных «линейным» способом.Вы можете пойти дальше в навигации, «нажав» или «выдвинув» контроллер.
Однако обычно в каждом представлении приложения есть способ перейти к другому представлению, которое не должно бытьродитель и может быть на предыдущих уровнях стека (или просто еще не существует).Такие приложения, как правило, позволяют пользователю перемещаться куда угодно, что, по-видимому, противоречит способу работы UINavigationController.
Мне кажется очевидным, что если я начну выдвигать контроллеры без контроля, у меня будут проблемы с памятью.
Как, например, перейти к представлению, которое находится в стеке на два уровня ниже (например, что будет делать кнопка «Домой»)?Стоит ли сохранять некоторые контроллеры / представления как исходные в одноэлементной переменной для лучшего доступа и избежания проблем с памятью?