CATabBarController(标签栏控制器)
编辑教程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 |
创建与初始化
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进行管理
CAVector<CAViewController*> vector;
vector.pushBack(first);
vector.pushBack(Second);
vector.pushBack(Third);
//创建TabBar
CATabBarController* 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控制:文本、默认图片、选中图片
//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"));
管理
主要是切换:
/*
*设置当前被选中的viewController
*viewController:要设置选中的指针
*/
bool showSelectedViewController(CAViewController* viewController);
/*
*获取当前显示view的viewController的索引值
*index:索引位置(从0开始)
*/
CAViewController* getViewControllerAtIndex(unsigned int index);
CATabBarController 属性
ScrollEnabled
类型:bool
解释:TabBar可以滑动切换。is/set{}。
TabBarHidden
类型:bool
解释:查看TabBar是否隐藏。is{}。
TabBarVerticalAlignment
类型:CABarVerticalAlignment
解释:TabBar对齐方式。get{}。
TabBarBackGroundImage
类型:CAImage*
解释:TabBar的背景图像。set/get{}。
TabBarBackGroundColor
类型:CAColor4B
解释:TabBar的背景颜色。set/get{}。
TabBarSelectedBackGroundImage
类型:CAImage*
解释:TabBar选择状态下背景的图像。set/get{}。
TabBarSelectedBackGroundColor
类型:CAColor4B
解释:TabBar选择状态下背景的颜色。set/get{}。
TabBarSelectedIndicatorImage
类型:CAImage*
解释:TabBar选择状态下指标的图像。set/get{}。
TabBarSelectedIndicatorColor
类型:CAColor4B
解释:TabBar选择状态下指标的颜色。set/get{}。
TabBarTitleColorForNormal
类型:CAColor4B
解释:TabBar标题为正常的颜色。set/get{}。
TabBarTitleColorForSelected
类型:CAColor4B
解释:TabBar标题为选定的颜色。set/get{}。
CATabBarController 方法
virtual bool initWithViewControllers(const CAVector&viewControllers,CABarVerticalAlignment var = CABarVerticalAlignmentBottom);
返回值:bool
参数:
类型 | 参数名 | 说明 |
---|---|---|
CAVector<CAViewController*>& | 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
选择支付方式:
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间