/**
* 获取当前屏幕上显示的VC
*
* @return 返回当前屏幕显示的VC
*/
- (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;
}
}
//判断是不是根视图 “FPTabBarViewController” 根据自己工程实际的名字 填写
if ([activityViewController isKindOfClass:NSClassFromString(@"FPTabBarViewController")]) {
UITabBarController *tabBar = (UITabBarController *)activityViewController;
activityViewController = ((UINavigationController *)tabBar.viewControllers[tabBar.selectedIndex]).viewControllers[0];
}
//判断是不是模态出来的页面,并且拿到当前视图
if (activityViewController.presentedViewController) {
if ([activityViewController.presentedViewController isKindOfClass:[UINavigationController class]]) {
activityViewController = [((UINavigationController *)activityViewController.presentedViewController).viewControllers lastObject];
}
}
return activityViewController;
}
* 获取当前屏幕上显示的VC
*
* @return 返回当前屏幕显示的VC
*/
- (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;
}
}
//判断是不是根视图 “FPTabBarViewController” 根据自己工程实际的名字 填写
if ([activityViewController isKindOfClass:NSClassFromString(@"FPTabBarViewController")]) {
UITabBarController *tabBar = (UITabBarController *)activityViewController;
activityViewController = ((UINavigationController *)tabBar.viewControllers[tabBar.selectedIndex]).viewControllers[0];
}
//判断是不是模态出来的页面,并且拿到当前视图
if (activityViewController.presentedViewController) {
if ([activityViewController.presentedViewController isKindOfClass:[UINavigationController class]]) {
activityViewController = [((UINavigationController *)activityViewController.presentedViewController).viewControllers lastObject];
}
}
return activityViewController;
}