iOS 获得屏幕正在显示的Controller 的方法
- //获取Window当前显示的ViewController
- - (UIViewController*)currentViewController{
- //获得当前活动窗口的根视图
- UIViewController* vc = [UIApplication sharedApplication].keyWindow.rootViewController;
- while (1)
- {
- //根据不同的页面切换方式,逐步取得最上层的viewController
- if ([vc isKindOfClass:[UITabBarController class]]) {
- vc = ((UITabBarController*)vc).selectedViewController;
- }
- if ([vc isKindOfClass:[UINavigationController class]]) {
- vc = ((UINavigationController*)vc).visibleViewController;
- }
- if (vc.presentedViewController) {
- vc = vc.presentedViewController;
- }else{
- break;
- }
- }
- return vc;
}
posted on 2018-04-24 13:23 Somebodywx 阅读(347) 评论(0) 编辑 收藏 举报