タブバー内に分割ビューがあるアプリがあります。これらの分割ビューにはナビゲーション階層があり、その上にモーダルビューが表示されることもありますが、すべて正常に機能しますが...
アプリがバックグラウンドになるたびにパスコードロックを表示しようとしているので、
[self.window.rootViewController presentModalViewController:lockView animated:YES];
私のAppDelegateのメソッドで
- (void)applicationWillResignActive:(UIApplication *)application
...モーダルビューが表示されない限り、これは正常に機能します。モーダルビューが開いている場合、パスコードは表示されません。
このロックビューを表示できるように、現在アクティブなView Controllerを取得する方法はありますか?
前もって感謝します
Cheerio
動作したコードは次のとおりです。
BOOL hasKids = YES;
UIViewController *topViewController = (UIViewController*)[[(UITabBarController*)self.window.rootViewController viewControllers] objectAtIndex:((UITabBarController*)self.window.rootViewController).selectedIndex];
while (hasKids) {
if (topViewController.presentedViewController) {
hasKids = YES;
topViewController = topViewController.presentedViewController;
} else {
hasKids = NO;
}
}
[topViewController presentModalViewController:lockView animated:YES];`