J'ai l'authentification par mot de passe pour mon application. Mon application est basée sur une fenêtre. J'ai cinq vue: MyApplicationAppDelegate
, MainViewController
, HelpViewController
, SettingViewController
et ErrorViewController
.Comportement incohérent de ApplicationWillEnterForeground
Lorsque l'application démarre, je navigue à MainViewController
. J'ai deux boutons sur la barre d'outils pour l'aide et le réglage qui dirigent vers les pages respectives. Maintenant, je l'ai écrit code suivant dans MyApplicationAppDelegate
:
- (void)applicationWillEnterForegroundUIApplication *)application {
[self showMyView];
}
-(void)showMyView{
if (![Global timeSet]) {
if (errorviewFlag) {
if (![Global show]){
ErrorPageViewController *bViewController = [[[ErrorPageViewController alloc]
initWithNibName"ErrorPageViewController" bundle:[NSBundle mainBundle]] autorelease];
[self setError:bViewController];
self.error = bViewController;
//[window addSubview:[error view]];
[[self navigationController] pushViewController:bViewController animated: NO];
UIBarButtonItem *_backButton = [[UIBarButtonItem alloc] initWithTitle"Back" style:UIBarButtonItemStyleDone target:nil action:nil];
[self.navigationController setNavigationBarHidden:YES];
[self.navigationController setToolbarHidden:YES];
[_backButton release], _backButton = nil;
[window makeKeyAndVisible];
errorviewFlag=FALSE;
[Global setShow:TRUE];
}
}
}
}
maintenant, cette méthode est appelée pour tous les temps, sauf la première.
Le problème est cela ne fonctionne que de manière souhaitée, à savoir montre ErrorPage, quand je réduis l'application de MainView. Si je minimise de l'aide ou du réglage, il ne montre pas la page d'erreur, mais plutôt la page principale sans contrôles de navigation. Pourquoi?
Si vous avez besoin d'autres détails, s'il vous plaît demander –