您的位置:首页 > 移动开发 > IOS开发

获取iOS应用中当前处于Activity状态的ViewController

2015-03-31 15:03 501 查看
转自: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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: