標籤:
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 }
ios appdelegate中擷取當前顯示頁