2011-07-08 8 views
2

を起動していない私は次の操作を実行し、同じビューをプッシュ:ポップと私は地元の通知を受け取った場合viewWillAppear()メソッド

 
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notif { 
    [navController popToRootViewControllerAnimated:NO]; 
    [navController pushViewController:notificationSplashViewController animated:YES]; 
} 

notificationSplashViewControllerが現在のViewControllerであれば、そのviewWillAppear()メソッドが呼び出されません。 notificationSplashViewControllerの再プッシュを検出するにはどうすればよいですか?

+0

野生の推測 - あなたがポップをアニメーション化するとどうなりますか? – Rayfleck

+0

...災害!ナビゲーションバーがクレイジーになり、プッシュされたビューコントローラーのすべてのタイトルがオーバーラップします。実際には、コンソールで私は得る: 'ネストされたプッシュアニメーションは、ナビゲーションバーを破損する可能性があります' '予期しない状態でのナビゲーション遷移の終了。ナビゲーションバーのサブビューツリーが破損する可能性があります。 ' –

+0

Gaak!それは悪いです。しないでください:-)別の野生の推測 - プッシュを独自のメソッド(thePushMethod)に移動し、ポップアップの後に、このようなメソッドを呼び出します。\t [self performSelector:@selector(thePushMethod)withObject:nil afterDelay :0.0]; – Rayfleck

答えて

0

試してみてください。私のために

[notificationSplashViewController.view removeFromSuperview]; 
[navController popToRootViewControllerAnimated:NO]; 
[navController pushViewController:notificationSplashViewController animated:YES]; 

、これはトリックをしました。

関連する問題