-(UINavigationController *) navigationControllerOfParentOrSelf //These 2 functions are short so I just go ahead
{
UIViewController * current=self;
while (current) {
UINavigationController * nav = current.navigationController;
if (nav) {
return nav;
}
current=current.parentViewController;
}
return nil;
}
-(UITabBarController *) tabBarControllerOfParentOrSelf
{
UIViewController * current=self;
while (current) {
UITabBarController * tc = current.tabBarController;
if (tc) {
return tc;
}
current=current.parentViewController;
}
return nil;
}
Похож на много повторяющегося кода.Как сделать этот UINavigationController более удобным для кода?
В основном я просто хочу знать, находится ли UIViewController внутри UINavigationController или нет. Дело в том, navigationController свойство часто NIL, когда UIViewController является childViewController
Ваш цикл не имеет никакого смысла. Он будет выполняться один раз, если свойство 'navigationController' не равно нулю. Если это ноль, он будет работать вечно. –
исправлено. Ладно, это не проблема. –