Панель вкладок + панель навигации - PullRequest
2 голосов
/ 23 августа 2009

У меня есть панель с двумя вкладками. На первой вкладке я могу развернуть более трех ... но на второй вкладке я не могу развернуть более одной ... Любые идеи?

Код: DemoAppdelegate.m

- (void)applicationDidFinishLaunching:(UIApplication *)application {
[window addSubview:tabBarController.view];
}

First tab controller is "FirstViewController"
in FirstViewController.m i have written to drill down to "billsummary.xib" 


DemoAppDelegate *app = (DemoAppDelegate *)[[UIApplication sharedApplication] delegate];
    UINavigationController *naviController = app.navigationController;
    BillsSummary *aViewAController = [[BillsSummary alloc] initWithNibName:@"BillsSummary" bundle:[NSBundle mainBundle]];

    [naviController pushViewController:aViewAController animated:YES];
    [aViewAController release];

which is working fine.But same code for in second tab for another .xib is not working and in second tab i have not used appdelegate instead i used "self.navigationcontroller"

UINavigationController *naviController = self.navigationController;
    PaymentsAmount *aViewAController = [[PaymentsAmount alloc] initWithNibName:@"PaymentsAmount" bundle:[NSBundle mainBundle]];

    [naviController pushViewController:aViewAController animated:YES];  
    [aViewAController release];

что делать? Любая помощь, пожалуйста?

Ответы [ 3 ]

3 голосов
/ 09 сентября 2011

Я не понимаю вашу структуру кода, но обычно эта проблема решается следующим образом:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
   ...

   // Initialize UINavigationControllers and push first viewcontrollers for each one

   UIViewController *view1 = [[UIViewController alloc] init];
   UINavigationController *nav1 = [[UINavigationController alloc] initWithRootViewController:view1];
   [view1 release];

   // Same for the second NavigationController 

   ...      

   // Initialize UITabBarController
   UITabBarController tController = [[UITabBarController alloc] init];
   tController.viewControllers = [NSArray arrayWithObjects:nav1, nav2, nil];
   [nav1 release];
   [nav2 release];

   [window addSubview:tController.view];

   ...
}
1 голос
/ 27 августа 2009

Пожалуйста, обратитесь к ответу, приведенному здесь. Учебная ссылка также предоставляется там. Желаем удачи.

Как: Навигационный контроллер на панели вкладок Контроллер

0 голосов
/ 23 августа 2009

В каком файле находится ваш второй фрагмент кода? Возможно, self.navigationController не относится к навигационному контроллеру, который, как вы думаете, имеет значение.

...