- (UIViewController *)mx_topVC
{
UIWindow *kW = nil;
if (@available(iOS 13.0, *)) {for (UIWindowScene* windowScene in [UIApplication sharedApplication].connectedScenes)
{if (windowScene.activationState == UISceneActivationStateForegroundActive)
{
kW = windowScene.windows.firstObject;
break;
}
}
}else{kW = [UIApplication sharedApplication].keyWindow;
}
UIViewController *topViewController = [kW rootViewController];
while (true) {if (topViewController.presentedViewController)
{topViewController = topViewController.presentedViewController;} else if ([topViewController isKindOfClass:[UINavigationController class]] && [(UINavigationController*)topViewController topViewController])
{topViewController = [(UINavigationController *)topViewController topViewController];
} else if ([topViewController isKindOfClass:[UITabBarController class]])
{UITabBarController *tab = (UITabBarController *)topViewController;
topViewController = tab.selectedViewController;
} else {break;}
}
return topViewController;
}