类说明 CAProgress是进度条控件,主要用于显示任务进度。
CAProgress 属性(点击查看方法介绍)
CAProgress 方法(点击查看方法介绍)
CAProgress是一个很简单的控件,其使用方式也比较便捷,我们只需要在相应的逻辑里对齐值进行增减便可以了,下面我们的实例中,就演示了在CrossApp的定时器中,每间隔一段时间增减CAProgress的值,当CAProgress值超过最大时设置为0的循环演示。
首先我们在FirstViewController.h添加一个定时器函数
//定时器函数
void updateProgressValue(float dt);
然后在FirstViewController.cpp中添加一下代码:
void FirstViewController::viewDidLoad()
{
// Do any additional setup after loading the view from its nib.
DSize size = this->getView()->getBounds().size;
CAProgress* progress = CAProgress::create();
//设置显示区域
progress->setCenter(DRect(size.width * 0.5, 200, 300, 60));
//设置进度值(0--1)之间的float
progress->setProgress(0.5f);
//设置进度的颜色
progress->setProgressTintColor(CAColor_orange);
//设置进度的图片
//progress->setProgressTintImage(CAImage::create("source_material/btn_rounded_highlighted.png"));
//设置背景的颜色
progress->setProgresstrackColor(CAColor_yellow);
//设置背景的图片
//progress->setProgressTrackImage(CAImage::create("source_material/btn_rounded3D_selected.png"));
//设置tag值
progress->setTag(1);
//添加到屏幕
this->getView()->addSubview(progress);
//创建Label用于显示progress的值
CALabel* label = CALabel::createWithCenter(DRect(size.width * 0.5, 100, 200, 100));
//水平剧中
label->setTextAlignment(CATextAlignmentCenter);
//显示progress的值
label->setText(crossapp_format_string("Progress:%.02f"));
//设置tag值
label->setTag(2);
//添加到屏幕
this->getView()->addSubview(label);
//启动定时器,间隔0.05秒调用
CAScheduler::schedule(schedule_selector(FirstViewController::updateProgressValue), this, 0.05, false);
}
//定时器函数
void FirstViewController::updateProgressValue(float dt)
{
//根据tag获得progress对象
CAProgress* progress = (CAProgress*) this->getView()->getSubviewByTag(1);
//获得progress的值
float value = progress->getProgress();
if (value < 1.0f)
{
value = value + 0.01;
}
else
{
value = 0;
}
//赋值
progress->setProgress(value);
//根据tag获得label
CALabel* label = (CALabel*)this->getView()->getSubviewByTag(2);
//显示value值
label->setText(crossapp_format_string("Progress:%.02f", value));
}
CAProgress 属性说明
ProgressTintColor 类型:CAColor4B 解释:设置进度的颜色。set/get{}。
ProgressTrackColor 类型:CAColor4B 解释:设置背景的颜色。set/get{}。
ProgressTintImage 类型:CAImage* 解释:设置进度的图片。set/get{}。
ProgressTrackImage
类型:CAImage* 解释:设置背景的图片。set/get{}。
CAProgress 方法说明
bool init(); 返回值:bool 参数: 解释:初始化
static CAProgress* create(); 返回值:static CAProgress* 参数: 解释:创建,默认Frame为(0,0,0,0)
virtual void setColor(const CAColor4B& color); 返回值:virtual void 参数: 类型
| 参数名
| 说明 | const CAColor4B& | color | 颜色 |
解释:设置进度条颜色
void setProgress(float progress, bool animated = false); 返回值:void 参数: 类型
| 参数名
| 说明 | float | progress | 进度值 | bool | animated = false | 是否显示动画
|
解释:设置进度
float getProgress(); 返回值:float 参数: 解释:获取进度
|
请发表评论