一、UITabBarController的创建(利用代码)
1.新建一个空项目,在MJAppDelegate.m的didFinishLaunch...方法中
//1.创建tabbar控制器 UITabBarController *tabbarVc = [[UITabBarController alloc] init]; //2.设置为window的根控制器 self.window.rootViewController = tabbarVc; //3.添加子控制器 UIViewController *vc1 = [[UIViewController alloc] init]; vc1.view.backgroundColor = [UIColor redColor]; vc1.tabBarItem.title = @"联系人"; vc1.tabBarItem.image = [UIImage imageNamed:@"tab_buddy_nor"]; UIViewController *vc2 = [[UIViewController alloc] init]; vc2.view.backgroundColor = [UIColor blueColor]; vc2.tabBarItem.title = @"动态"; vc2.tabBarItem.image = [UIImage imageNamed:@"tab_qworld_nor"]; UIViewController *vc3 = [[UIViewController alloc] init]; vc3.view.backgroundColor = [UIColor greenColor]; vc3.tabBarItem.title = @"设置"; vc3.tabBarItem.image = [UIImage imageNamed:@"tab_me_nor"]; tabbarVc.viewControllers = @[vc1,vc2,vc3]; [self.window makeKeyAndVisible];
效果图
PS:选中状态的图片变蓝是系统自动实现的,不用自己做。
UITabBarController的view结构(注意TabBar的高度为49)
PS:当点击最左边时,显示vc1的view,点击中间时,先将vc1的view移开(没有销毁),然后将vc2的view放上去,除非发生内存警告才会销毁目前没有使用的view
二、UITabBarController的创建(利用storyboard)
1.来到storyboard,将默认控制器View删除,拖一个TabBarController。将连着线的两个控制器View删除,将线也删除。拖3个ViewController。
2.将默认控制器文件删除,自己新建3个控制器文件,并将storyboard里3个ViewController的Class对应修改。
3.来到storyboard,右击TabBarController,将view controllers按顺序连接到新拖的ViewController上。
4.分别选中3个ViewController的按钮,并分别修改Title