ios appdelegate中获取当前显示页
ios appdelegate中获取当前显示页
网上有很多种方法,但是都不好使,找到了这个好使的,和大家分享下。
1 -(UIViewController *)currentViewController 2 { 3 UIViewController * currVC = nil; 4 UIViewController * Rootvc = self.window.rootViewController ; 5 do { 6 if ([Rootvc isKindOfClass:[UINavigationController class]]) { 7 UINavigationController * nav = (UINavigationController *)Rootvc; 8 UIViewController * v = [nav.viewControllers lastObject]; 9 currVC = v; 10 Rootvc = v.presentedViewController; 11 continue; 12 }else if([Rootvc isKindOfClass:[UITabBarController class]]){ 13 UITabBarController * tabVC = (UITabBarController *)Rootvc; 14 currVC = tabVC; 15 Rootvc = [tabVC.viewControllers objectAtIndex:tabVC.selectedIndex]; 16 continue; 17 } 18 // else if ([Rootvc isKindOfClass:[XXXCustom class]]){ 19 // XXXCustom * tabVC = (XXXCustom *)Rootvc; 20 // currVC = tabVC; 21 // Rootvc = tabVC.selectedViewController; 22 // continue; 23 // } 24 } while (Rootvc!=nil); 25 26 27 return currVC; 28 }
posted on 2016-06-23 13:47 codemaker313 阅读(424) 评论(0) 编辑 收藏 举报