Как узнать, является ли UIViewController корневым контроллером представления? - PullRequest
24 голосов
/ 28 октября 2010

В основном я хочу знать, является ли контроллер представления, в котором я нахожусь, корневым контроллером представления или нет.

Если это не так, я хочу поместить кнопку в навигационную панель, которая говорит "назад" (какесли бы это была правильная кнопка возврата - этот бит я знаю, как сделать).

Прежде чем вы спросите, я удалил все заголовки из своих контроллеров представления - я не хотел, чтобы они отображались в моей навигацииbar ... это очень сложно - но это означает, что когда я прохожу свой стек навигации, ни у одного из контроллеров push-представления нет кнопки возврата.: /

Спасибо, Том

Ответы [ 2 ]

71 голосов
/ 28 октября 2010
if ( self != [self.navigationController.viewControllers objectAtIndex:0] )
{
   // Put Back button in navigation bar
}
12 голосов
/ 26 августа 2015

Вы также можете попробовать:

if (self.navigationController.viewControllers.count == 1) {
    NSLog(@"self is RootViewController");
}
...