CATabBarController(标签栏控制器)
类说明
视图管理器的派生类,CATabBarController作为一个特殊的视图管理器,负责协调多个视图管理器之间的工作,是对视图管理器的一种特殊封装。通常当你的程序需要使用一些平行的界面,这里说的平行界面就是程序中的某些功能界面是处于平级的,这些功能界面可以相互切换,tabBarController就很适合这种情况。
基类
CAViewController,CATabBarDelegate,CAPageViewDelegate,CAScrollViewDelegate
CATabBarController 属性(点击查看方法介绍)
| 属性 | 说明 |
| ScrollEnabled | TabBar可以滑动切换 |
| TabBarHidden | 查看TabBar是否隐藏 |
| TabBarVerticalAlignment | TabBar对齐方式 |
| TabBarBackGroundImage | TabBar的背景图像 |
| TabBarBackGroundColor | TabBar的背景颜色 |
| TabBarSelectedBackGroundImage | TabBar选择状态下背景的图像 |
| TabBarSelectedBackGroundColor | TabBar选择状态下背景的颜色 |
| TabBarSelectedIndicatorImage | TabBar选择状态下的指标图像 |
| TabBarSelectedIndicatorColor | TabBar选择状态下的指标颜色 |
| TabBarTitleColorForNormal | TabBar标题为正常状态的颜色 |
| TabBarTitleColorForSelected | TabBar标题为选定状态的颜色 |
CATabBarController 方法(点击查看方法介绍)
| 方法 | 说明 |
| initWithViewControllers | 初始化CATabBar |
| showSelectedViewController | 设置当前被选中的viewController |
| getViewControllerAtIndex | 获取当前显示view的viewController的索引值 |
| getSelectedViewController | 获取当前选中的viewController |
| showSelectedViewControllerAtIndex | 根据索引值显示当前选中的viewController |
| getSelectedViewControllerAtIndex | 获取当前的被选中的viewController的索引值 |
| setTabBarHidden | TabBar显示或隐藏 |
| updateItem | 更新视图 |
| showTabBarSelectedIndicator | 显示刷新TabBar |
创建与初始化
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
FirstViewController* first= new FirstViewController();
first->init();first->setTabBarItem(CATabBarItem::create(UTF8("第一项"),CAImage::create(""),CAImage::create("")));
SecondViewController* Second = new SecondViewController();
Second->init();Second->setTabBarItem(CATabBarItem::create(UTF8("第二项"), CAImage::create(""), CAImage::create("")));
ThirdViewController* Third = new ThirdViewController();
Third->init();Third->setTabBarItem(CATabBarItem::create(UTF8("第三项"), CAImage::create(""), CAImage::create("")));
//将多个ViewController放到CAVector进行管理CAVectorvector.pushBack(first);vector.pushBack(Second);vector.pushBack(Third);//创建TabBarCATabBarController* tab = new CATabBarController();
//通过含有ViewControler的CAVector进行初始化tab->initWithViewControllers(vector);//设置可以滑动切换tab->setScrollEnabled(true);
tab->showTabBarSelectedIndicator();this->setRootViewController(tab);
//是否内存first->release();Second->release();Third->release();tab->release(); |
样式
可设置样式:文本、位置(上、下)、背景颜色、图片
CATabBarItem控制:文本、默认图片、选中图片
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
//title:文本,image:默认背景图片,selectedImage:选中时背景图片static CATabBarItem* create(const std::string& title, CAImage* image, CAImage* selectedImage = NULL);
CATabBarController控制:显示位置(初始时设置)、背景颜色、图片 //初始时设置显示位置在顶部
tab->initWithViewControllers(vector,CABarVerticalAlignmentTop);
//是否隐藏TabBar
tab->setTabBarHidden(false, false);
//默认背景颜色
tab->setTabBarBackGroundColor(CAColor_orange);
//默认背景图片
tab->setTabBarBackGroundImage(CAImage::create("source_material/btn_left_blue.png"));
|
管理
主要是切换:
|
1
2
3
4
5
6
7
8
9
10
11
|
/*
*设置当前被选中的viewController
*viewController:要设置选中的指针
*/
bool showSelectedViewController(CAViewController* viewController);
/*
*获取当前显示view的viewController的索引值
*index:索引位置(从0开始)
*/
CAViewController* getViewControllerAtIndex(unsigned int index);
|
CATabBarController 属性
类型:bool
解释:TabBar可以滑动切换。is/set{}。
类型:bool
解释:查看TabBar是否隐藏。is{}。
类型:CABarVerticalAlignment
解释:TabBar对齐方式。get{}。
类型:CAImage*
解释:TabBar的背景图像。set/get{}。
类型:CAColor4B
解释:TabBar的背景颜色。set/get{}。
类型:CAImage*
解释:TabBar选择状态下背景的图像。set/get{}。
类型:CAColor4B
解释:TabBar选择状态下背景的颜色。set/get{}。
类型:CAImage*
解释:TabBar选择状态下指标的图像。set/get{}。
类型:CAColor4B
解释:TabBar选择状态下指标的颜色。set/get{}。
类型:CAColor4B
解释:TabBar标题为正常的颜色。set/get{}。
类型:CAColor4B
解释:TabBar标题为选定的颜色。set/get{}。
CATabBarController 方法
virtual bool initWithViewControllers(const CAVector
返回值:bool
参数:
| 类型 | 参数名 | 说明 |
| CAVector |
viewControllers | 含有CAViewController的数组 |
| CABarVerticalAlignment | var = CABarVerticalAlignmentBottom | 切换条位置(上部,下部) |
解释:初始化CATabBar
bool showSelectedViewController(CAViewController* viewController);
返回值:bool
参数:
| 类型 | 参数名 | 说明 |
| CAViewController* | viewController | 要设置选中的指针 |
解释:设置当前被选中的viewController
CAViewController* getViewControllerAtIndex(unsigned int index);
返回值:CAViewController*
参数:
| 类型 | 参数名 | 说明 |
| unsigned int | index | 索引位置(从0开始) |
解释:获取当前显示view的viewController的索引值
CAViewController* getSelectedViewController();
返回值:CAViewController*
参数:
解释:获取当前选中的viewController
virtual bool showSelectedViewControllerAtIndex(unsigned int index);
返回值:bool
参数:
| 类型 | 参数名 | 说明 |
| unsigned int | index | 索引位置(从0开始) |
解释:根据索引值显示当前选中的viewController
virtual unsigned int getSelectedViewControllerAtIndex();
返回值:unsigned int
参数:
解释:获取当前的被选中的viewController的索引值
virtual void setTabBarHidden(bool hidden, bool animated);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| bool | hidden | 是否隐藏(默认false) |
| bool | animated | 是否开启动画效果 |
解释:TabBar的显示与隐藏
void updateItem(CAViewController* viewController);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| CAViewController* | viewController | 需要更新的视图管理器 |
解释:更新视图
void showTabBarSelectedIndicator();
返回值:void
参数:
解释:显示刷新TabBar

