开发者社区> 问答> 正文

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
@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];来进行跳转

展开
收起
杨冬芳 2016-06-28 18:45:38 1703 0
1 条回答
写回答
取消 提交回答
  • IT从业

    这个问题是兼容性问题,iphone 4 和iphone 5试试 !

    2019-07-17 19:48:40
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载