Как проверить, имеет ли rootViewController определенный класс?

Я хотел бы знать, имеет ли rootViewController в стеке контроллера навигации определенный класс. Как это сделать?

Thx для помощи,

Stephane

Здесь вы идете приятель

id rootController = [self.navigationController rootViewController]; if([rootController isKindOfClass:[YourDesiredController class]]){ //do something } 

Контроллер корневого контроллера контроллеров навигации,

 id rootVC = [[navigationController viewControllers] objectAtIndex:0]; 

И проверьте класс rootVC следующим образом:

 if ([rootVC isKindOfClass:[YourClass class]]) { 

Вы можете проверить класс с помощью:

 if ([rootViewController isKindOfClass:[YourClass class]]){ }else if ([rootViewController isKindOfClass:[AnotherClass class]]){ }else{ } 

Возможно, вы можете использовать метод isKindOfClass

 [rootViewController isKindOfClass: [RootViewController class]]; 

Как проверить текущий rootViewController и использовать его в if statement :

 // Get your current rootViewController NSLog(@"My current rootViewController is: %@", [[[UIApplication sharedApplication].delegate.window.rootViewController class]); // Use in an if statement UIViewController *rootViewController = [UIApplication sharedApplication].delegate.window.rootViewController; if ([rootViewController isKindOfClass:[MyViewController class]]) { NSLog(@"Your rootViewController is MyViewController!!"); }