首先我些这些东西的时候使用的书纯代码写的 没有使用storyboard 想必使用纯代码创建工程是每个开发者都会的这里就不多说了
MYController* my = [[MYController alloc]init];
self.window=[[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
self.window.rootViewController =my;
[self.window makeKeyAndVisible];
这里说一下这个 MYController 这个根视图的类型是 UITabBarController类型 然后在控制器中写如下代码:
-(void)addChileVC{
MessageController * threeVC =[[MessageController alloc]init];
threeVC.title =@"数据推广";
UINavigationController * three =[self boardNameInstantVc:threeVC];
PushDataController * otherVC =[[PushDataController alloc]init];
otherVC.title =@"文案采集";
UINavigationController * other =[self boardNameInstantVc:otherVC];
OtherController * elseVC =[[OtherController alloc]init];
elseVC.title =@"商家精选";
UINavigationController * elses =[self boardNameInstantVc:elseVC];
self.viewControllers = @[three,other,elses];
}
- (UINavigationController *)boardNameInstantVc:(UIViewController *)controller{
UINavigationController * nav =[[UINavigationController alloc]initWithRootViewController:controller];
return nav;
}
这是添加控制器的代码
-(void)addtabar{
MTtabar * custabar =[[MTtabar alloc]init];
custabar.frame = self.tabBar.frame;
[self.view addSubview:custabar];
self.custabar = custabar;
}
-(void)addbtn{
for (int i = 0; i<3; i++) {
MTTabButton * btn =[[MTTabButton alloc]init];
NSString *normalImage = [NSString stringWithFormat:@"TabBar%@",@(i + 1)];
btn.tag = i;
[btn setImage:[UIImage imageNamed:normalImage] forState:UIControlStateNormal];
CGFloat btnW = self.view.frame.size.width / 3;
CGFloat btnH = 45;
btn.frame = CGRectMake(i*btnW, 0, btnW, btnH);
if (i == 0) {
btn.selected =YES;
self.selectBtn = btn;
}
[btn addTarget:self action:@selector(btnclick:) forControlEvents:UIControlEventTouchDown];
[self.custabar addSubview:btn];
}
}
-(void)btnclick:(UIButton * )sender{
self.selectBtn.selected = NO;
sender.selected = YES;
self.selectBtn = sender;
下面的这一句代码是tabar的方法 根据不同的下标去跳转不同的控制器 所以要在创建按钮的时候设置一下按钮的tag值
self.selectedIndex = sender.tag;
}
还有另外一种方法就 直接创建一个继承UItabarviewcontroller的控制器 在里面添加自己想加的控件!
nextVC.hidesBottomBarWhenPushed=YES;// 进入后隐藏tabbar
这个是隐藏tabar的方法!
今天添加一下修改TabBar默认控制器的代码
self.selectedViewController =[self.viewControllers objectAtIndex:1];
后面数组里面的坐标可以根据自己的需求改!
这个是自定义tabar。 并且跳转相应的控制器 就是自己在开发的时候遇到的情况 帮助一下需要帮助的人!大神勿喷啊 如果有更好的方法 请大神指教!!!!!!!!