首页 > navigationcontroller在tabbar中的使用

navigationcontroller在tabbar中的使用

在AppDelegate.h中
@property (strong, nonatomic) UINavigationController *navigationController;

在AppDelegate.m中

self.navigationController=[[UINavigationController alloc]initWithRootViewController:self.viewController];
    [self.window addSubview:navigationController.view];

在用navigationcontroller跳转到一个tabbar的界面,主视图为TabbarMain
在TabbarMain.h中

@interface TabbarMain : UITabBarController<UITabBarControllerDelegate>
@property (strong, nonatomic) UITabBarController *controller;

在TabbarMain.m中

UIViewController *huntingMain=[[HuntingMain alloc]initWithNibName:@"HuntingMain" bundle:nil];
    UIViewController *restaurantMain=[[RestaurantMain alloc]initWithNibName:@"RestaurantMain" bundle:nil];
    restaurantMain.navigationController.view=self.navigationController;
    UIViewController *settingMain=[[SettingMain alloc]initWithNibName:@"SettingMain" bundle:nil];
   UIViewController *moreMain=[[MoreMain alloc]initWithNibName:@"MoreMain" bundle:nil];
   controller=[[UITabBarController alloc]init];
    controller.viewControllers=[NSArray arrayWithObjects:huntingMain, restaurantMain, settingMain,moreMain,nil];//添加4个tabitem
    controller.delegate=self;
    [self.view addSubview:controller.view];

在TabbarMain.m是可以使用[self.navigationController pushViewController:view animated:YES];来进行页面的跳转
但是在某一个tabitem页面中再使用上面的方法就跳转不了,估计是导航控制器对这些tabitem没用(比如说在某个选项卡中有一个列表,单击某项进行跳转),不知道要怎么样才能在tabitem的页面中使用类似[self.navigationController pushViewController:view animated:YES];来进行跳转


用UINavigationController来组织你的Tabbar下的viewcontroller
TabbarMain.m

UIViewController *huntingMain=[[HuntingMain alloc]initWithNibName:@"HuntingMain" bundle:nil];

navigationController=[[UINavigationController alloc]initWithRootViewController:self.huntingMain];

controller=[[UITabBarController alloc]init];
    controller.viewControllers=[NSArray arrayWithObjects:navigationController, restaurantMain, settingMain,moreMain,nil];/
【热门文章】
【热门文章】