ViewDidAppear не работает, когда я звоню в iOS 4.3? - PullRequest
0 голосов
/ 02 января 2012

У меня есть UITabBarController, который включает четыре UIViewController, и когда я хочу вызвать viewDidAppear, он не работает. Не знаю, почему это происходит только для iOS 4.3?

//
UINavigationController *nav3 = [[UINavigationController alloc] init];
SearchViewController *searchViewController = [[SearchViewController alloc] init];
searchViewController.context = context;

[nav3 pushViewController:searchViewController animated:NO];
[arrayViewController addObject:nav3];

[nav3 release]; [searchViewController release];

//
UINavigationController *nav4 = [[UINavigationController alloc] init];
FavorisViewController *favorisViewController = [[FavorisViewController alloc] init];
favorisViewController.context = context;

[nav4 pushViewController:favorisViewController animated:NO];
[arrayViewController addObject:nav4];

[nav4 release]; [favorisViewController release];

Мой любимый UIViewController:

     #pragma mark - View lifecycle

     - (void)viewDidLoad
      {
         [super viewDidLoad];

          NSError *error;
          NSFetchRequest *fetch = [[NSFetchRequest alloc] init];
          fetch.entity = [NSEntityDescription entityForName:@"Businesses" inManagedObjectContext:context];
          fetchObject = [context executeFetchRequest:fetch error:&error];

         [fetch release];

        }

      - (void)viewDidAppear:(BOOL)animated
       {
          NSLog(@"test");
       }

1 Ответ

0 голосов
/ 02 января 2012

Попробуйте вместо этого использовать метод UINavigationController initWithRootViewController:.Например,

FavorisViewController *favorisViewController = [[FavorisViewController alloc] init];
favorisViewController.context = context;
UINavigationController *nav4 = [[UINavigationController alloc] initWithRootViewController:favorisViewController];
[favorisViewController release];

Обратите внимание, что только то, что представление помещается в стек, не означает, что оно является видимым.Пока вы не выберете вкладку с этим представлением, viewDidAppear: не должен вызываться.

...