I have a tabbar based app. In the app delegate, I've implemented:
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
if([viewController isKindOfClass:[TabBNavigationController class]]){
NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
[nc postNotificationName:@"TabBClicked"
object:self userInfo:nil];}
and fire off a开发者_StackOverflow中文版 notification. ViewB is displayed when tabB is pressed. ViewB is inside a UINavigationController. The problem is ViewB's viewWillAppear fires before the above event. I need to know TabB was clicked before ViewB's viewWillAppear fires. Is there another way to get in front of viewWillAppear in this case?
Did you try tabBarController:shouldSelectViewController:
, this method should be called before any view gets visible.
精彩评论