您的位置:首页 > 其它

获取当前处于activity状态的view controller

2016-03-18 16:01 295 查看
转自:http://blog.csdn.net/lixuwen521/article/details/41447507

// 获取当前处于activity状态的view controller

- (UIViewController *)activityViewController

{

    UIViewController* activityViewController = nil;

    

    UIWindow *window = [[UIApplication sharedApplication] keyWindow];

    if(window.windowLevel != UIWindowLevelNormal)

    {

        NSArray *windows = [[UIApplication sharedApplication] windows];

        for(UIWindow *tmpWin in windows)

        {

            if(tmpWin.windowLevel == UIWindowLevelNormal)

            {

                window = tmpWin;

                break;

            }

        }

    }

    

    NSArray *viewsArray = [window subviews];

    if([viewsArray count] > 0)

    {

        UIView *frontView = [viewsArray objectAtIndex:0];

        

        id nextResponder = [frontView nextResponder];

        

        if([nextResponder isKindOfClass:[UIViewController class]])

        {

            activityViewController = nextResponder;

        }

        else

        {

            activityViewController = window.rootViewController;

        }

    }

    

    return activityViewController;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: