判断当前VC是不是正在展示的活跃页面:viewController.isViewLoaded && viewController.view.window

 

 

获取正在显示的viewController:

//获取Window当前显示的ViewController
- (UIViewController*)currentViewController{
    UIViewController* vc = [UIApplication sharedApplication].keyWindow.rootViewController;
    
    while (1) {
        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 2016-11-29 17:13  fatal-奚山遇白  阅读(501)  评论(0编辑  收藏  举报