获取任意ViewController的navigationController

这是一个扩展, 不知道怎么编辑, 复制过来的不好看, 大家直接复制出去就行了, 主要看方法

@implementation UIViewController (IMYPublic)

- (UINavigationController*)imy_navigationController

{

UINavigationController* nav = nil;

if ([self isKindOfClass:[UINavigationController class]]) {

nav = (id)self;

}  else {

if ([self isKindOfClass:[UITabBarController class]]) {

nav = [((UITabBarController*)self).selectedViewController imy_navigationController];

} else {

nav = self.navigationController;

}

}

return nav;

}

@end

你可能感兴趣的:(获取任意ViewController的navigationController)