当前位置:K88软件开发文章中心编程语言APP编程CrossApp → 文章内容

CAProgress(进度条)

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-23 13:51:48

由 ?﹏???ζ???﹏﹏? 创建, 最后一次修改 2016-08-29 类说明CAProgress是进度条控件,主要用于显示任务进度。CAProgress 属性(点击查看方法介绍)属性说明ProgressTintColor设置进度的颜色ProgressTrackColor设置背景的颜色ProgressTintImage设置进度的图片ProgressTrackImage设置背景的图片CAProgress 方法(点击查看方法介绍)方法说明init初始化create创建,默认Frame为(0,0,0,0)setColor设置进度条颜色setProgress设置进度getProgress获取进度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参数:类型参数名说明floatprogress进度值boolanimated = false是否显示动画解释:设置进度float getProgress();返回值:float参数:解释:获取进度

CAProgress(进度条)