iPhone NavigationViewController объяснение - PullRequest
0 голосов
/ 07 февраля 2012

Я уже некоторое время использую контроллер вида навигации, и он действительно отлично работает.Проблема в том, что я не до конца понимаю.Возможно, некоторые опытные участники могут пролить свет на эту тему.У меня есть несколько вопросов:

1) Каждый класс, который расширяет UIViewController, имеет свойство navigationController.Apple Doc заявляет следующее: «Возвращает контроллер навигации, только если контроллер представления находится в его стеке».Означает ли это, что это свойство равно nil, если этот контроллер является корневым контроллером.

2) При использовании метода [self.navigationController pushViewController: nextController animated: YES] nextController помещается в стек.Если вы затем вызовете self.navigationController внутри nextController, свойство navigationController будет иметь значение nil?

3) Каждый ли навигационный контроллер имеет свой собственный стек или существует общий стек для всех контроллеров?

4) Наконец, чтопроисходит с элементами в стеке, если вы не выталкиваете их, а отпускаете контроллер навигации?Допустим, вы нажимаете, толкаете, толкаете, а затем освобождаете навигационный контроллер.Эти объекты остаются в стеке или они уничтожены?

1 Ответ

1 голос
/ 07 февраля 2012

1) да 2) нет 3) Каждый навигационный контроллер имеет свой собственный стек 4) Когда вы нажимаете контроллер вида, контроллер навигации сохраняет его. Когда контроллер навигации освобождается, он освобождает все контроллеры представления в стеке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...