viewcontrollerに基づいてアクションを実行できるように、どのViewControllerユーザーが現在バックグラウンドプロセスによって持っているかをチェックする方法。現在、私はあなたが私はすでに上で行われますがきた。この方法を使用してカテゴリを作成することができますが、方法IOS Swiftの任意のバックグラウンドプロセスを使用して現在のviewcontrollerを取得する方法
- (UIViewController *)topViewController{
return [self topViewController:[UIApplication sharedApplication].keyWindow.rootViewController];
}
- (UIViewController *)topViewController:(UIViewController *)rootViewController{
if(rootViewController.presentedViewController == nil){
return rootViewController;
}
if ([rootViewController.presentedViewController isMemberOfClass:[UINavigationController class]]) {
UINavigationController *navigationController = (UINavigationController *)rootViewController.presentedViewController;
UIViewController *lastViewController = [[navigationController viewControllers] lastObject];
return [self topViewController:lastViewController];
}
UIViewController *presentedViewController = (UIViewController *)rootViewController.presentedViewController;
return [self topViewController:presentedViewController];
}
の下に使用したトップビューコントローラを見つけることができます迅速2.3
おかげで、 カマル
とトップビューコントローラ
呼び出しを見つけるためのUIApplicationの迅速な拡張です。 –
トップビューコントローラーが何であっても、それが –
の場合はタブバーを返します。警告コントローラーが表示されている場合は返されませんか? –