首页 > 代码库 > UI进阶--UITabBarController简单介绍
UI进阶--UITabBarController简单介绍
UITabBarController跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用。UITabBarController简单介绍中也有说过,为了便于管理控制器,iOS提供了2个比较特殊的控制器:UITabBarController控制器以及UINavigationController控制器。
UITabBarController添加控制器的方式有2种:
添加单个子控制器:
- (void)addChildViewController:(UIViewController *)childController;
设置子控制器数组:
property(nonatomic,copy) NSArray *viewControllers;
UITabBarButton里面显示什么内容,由对应子控制器的tabBarItem属性决定
UITabBarItem有以下属性影响着UITabBarButton的内容
1 //标题文字2 @property(nonatomic,copy) NSString *title;3 //图标4 @property(nonatomic,retain) UIImage *image;5 //选中时的图标6 @property(nonatomic,retain) UIImage *selectedImage;7 //提醒数字8 @property(nonatomic,copy) NSString *badgeValue;
具体示例代码(在AppDelegate.m文件中):
1 //1.创建窗口 2 UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; 3 4 //2.设置窗口的根控制器 为Tabbar控制器 5 6 // 2.1创建tabbar控制器 7 UITabBarController *tabbarVc = [[UITabBarController alloc] init]; 8 9 // 2.2设置子控制器10 UIViewController *vc1 = [[UIViewController alloc] init];11 vc1.view.backgroundColor = [UIColor redColor];12 13 // 设置UITabbarButton的标题14 vc1.tabBarItem.title = @"联系人";15 vc1.tabBarItem.image = [UIImage imageNamed:@"tab_buddy_nor"];16 vc1.tabBarItem.badgeValue = http://www.mamicode.com/@"12";17 //[tabbarVc addChildViewController:vc1];18 19 UIViewController *vc2 = [[UIViewController alloc] init];20 vc2.view.backgroundColor = [UIColor greenColor];21 //[tabbarVc addChildViewController:vc2];22 vc2.tabBarItem.title = @"动态";23 vc2.tabBarItem.image = [UIImage imageNamed:@"tab_qworld_nor"];24 25 26 UIViewController *vc3 = [[UIViewController alloc] init];27 vc3.view.backgroundColor = [UIColor yellowColor];28 //[tabbarVc addChildViewController:vc3];29 vc3.tabBarItem.title = @"设置";30 vc3.tabBarItem.image = [UIImage imageNamed:@"tab_me_nor"];31 32 33 //一次性添加tabbar的子控制器34 tabbarVc.viewControllers = @[vc1,vc2,vc3];35 //设置窗口的根控制器36 window.rootViewController = tabbarVc;37 38 // 3.设置窗口为主窗口并可见39 [window makeKeyAndVisible];40 self.window = window;
最终效果:
UI进阶--UITabBarController简单介绍
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。