UITabBarController跟UINavigationController 類似,UITabBarController也可以輕松地管理多個(gè)控制器.
UITabBarController的View結(jié)構(gòu)
UITabBarController是一個(gè)控制器,所以也有自己的View.
它View內(nèi)部的架構(gòu)為一個(gè)專門存放子控制器View的View,和一個(gè)UITabBar條.
使用步驟:
1:初始化UITabBarController
2:設(shè)置UIWindow的rootViewController為UITabBarController
3:根據(jù)具體情況,通過(guò)addChildViewController方法添加對(duì)應(yīng)個(gè)數(shù)的子控制器
UITabBarController添加控制器的方式有2種
self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
//? ? 創(chuàng)建標(biāo)簽控制
UITabBarController *tabBar = [[UITabBarController alloc]init];
self.window.rootViewController = tabBar;
//? ? 創(chuàng)建第一個(gè)子控制器? 默認(rèn)會(huì)把第一個(gè)添加的子控制器的View,給添加到存子控制器的View上.并且默認(rèn)選中的是第一個(gè)添加的子控制器
UIViewController *vc1 = [[UIViewController alloc]init];
//? ? 設(shè)置顏色
vc1.view.backgroundColor = [UIColor redColor];
//? ? 設(shè)置標(biāo)題
vc1.tabBarItem.title = @"紅色";
//? ? 添加子控制器
[tabBar addChildViewController:vc1];
//? ? 創(chuàng)建第二個(gè)子控制器
UIViewController *VC2 = [[UIViewController alloc]init];
VC2.view.backgroundColor = [UIColor yellowColor];
VC2.tabBarItem.title = @"黃色";
[tabBar addChildViewController:VC2];
//? ? 創(chuàng)建第三個(gè)子控制器
UIViewController *VC3 = [[UIViewController alloc]init];
VC3.view.backgroundColor = [UIColor blueColor];
VC3.tabBarItem.title = @"藍(lán)色";
[tabBar addChildViewController:VC3];
[self.window makeKeyAndVisible];
UITabBarButton里面顯示什么內(nèi)容,由對(duì)應(yīng)子控制器的tabBarItem屬性決定 tabBarltem是一個(gè)模型
tabBar里面有幾個(gè)子控制器 就會(huì)在TabBar里面創(chuàng)建幾個(gè)按鈕
按鈕平分TabBar寬度.
設(shè)置標(biāo)題
VC1.tabBarItem.title = @"消息";
設(shè)置消息提示
VC1.tabBarItem.badgeValue = @"99";
設(shè)置顯示圖片
VC1.tabBarItem.image = [UIImage imageNamed:@"tab"];
