W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
類說明
CAProgress是進(jìn)度條控件,主要用于顯示任務(wù)進(jìn)度。
CAProgress 屬性(點(diǎn)擊查看方法介紹)
屬性 | 說明 |
ProgressTintColor | 設(shè)置進(jìn)度的顏色 |
ProgressTrackColor | 設(shè)置背景的顏色 |
ProgressTintImage | 設(shè)置進(jìn)度的圖片 |
ProgressTrackImage | 設(shè)置背景的圖片 |
CAProgress 方法(點(diǎn)擊查看方法介紹)
方法 | 說明 |
init | 初始化 |
create | 創(chuàng)建,默認(rèn)Frame為(0,0,0,0) |
setColor | 設(shè)置進(jìn)度條顏色 |
setProgress | 設(shè)置進(jìn)度 |
getProgress | 獲取進(jìn)度 |
CAProgress是一個(gè)很簡(jiǎn)單的控件,其使用方式也比較便捷,我們只需要在相應(yīng)的邏輯里對(duì)齊值進(jìn)行增減便可以了,下面我們的實(shí)例中,就演示了在CrossApp的定時(shí)器中,每間隔一段時(shí)間增減CAProgress的值,當(dāng)CAProgress值超過最大時(shí)設(shè)置為0的循環(huán)演示。
首先我們?cè)贔irstViewController.h添加一個(gè)定時(shí)器函數(shù)
//定時(shí)器函數(shù)
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();
//設(shè)置顯示區(qū)域
progress->setCenter(DRect(size.width * 0.5, 200, 300, 60));
//設(shè)置進(jìn)度值(0--1)之間的float
progress->setProgress(0.5f);
//設(shè)置進(jìn)度的顏色
progress->setProgressTintColor(CAColor_orange);
//設(shè)置進(jìn)度的圖片
//progress->setProgressTintImage(CAImage::create("source_material/btn_rounded_highlighted.png"));
//設(shè)置背景的顏色
progress->setProgresstrackColor(CAColor_yellow);
//設(shè)置背景的圖片
//progress->setProgressTrackImage(CAImage::create("source_material/btn_rounded3D_selected.png"));
//設(shè)置tag值
progress->setTag(1);
//添加到屏幕
this->getView()->addSubview(progress);
//創(chuàng)建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"));
//設(shè)置tag值
label->setTag(2);
//添加到屏幕
this->getView()->addSubview(label);
//啟動(dòng)定時(shí)器,間隔0.05秒調(diào)用
CAScheduler::schedule(schedule_selector(FirstViewController::updateProgressValue), this, 0.05, false);
}
//定時(shí)器函數(shù)
void FirstViewController::updateProgressValue(float dt)
{
//根據(jù)tag獲得progress對(duì)象
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);
//根據(jù)tag獲得label
CALabel* label = (CALabel*)this->getView()->getSubviewByTag(2);
//顯示value值
label->setText(crossapp_format_string("Progress:%.02f", value));
}
CAProgress 屬性說明
類型:CAColor4B
解釋:設(shè)置進(jìn)度的顏色。set/get{}。
類型:CAColor4B
解釋:設(shè)置背景的顏色。set/get{}。
類型:CAImage*
解釋:設(shè)置進(jìn)度的圖片。set/get{}。
類型:CAImage*
解釋:設(shè)置背景的圖片。set/get{}。
CAProgress 方法說明
返回值:bool
參數(shù):
解釋:初始化
返回值:static CAProgress*
參數(shù):
解釋:創(chuàng)建,默認(rèn)Frame為(0,0,0,0)
virtual void setColor(const CAColor4B& color);
返回值:virtual void
參數(shù):
類型 | 參數(shù)名 | 說明 |
const CAColor4B& | color | 顏色 |
解釋:設(shè)置進(jìn)度條顏色
void setProgress(float progress, bool animated = false);
返回值:void
參數(shù):
類型 | 參數(shù)名 | 說明 |
float | progress | 進(jìn)度值 |
bool | animated = false | 是否顯示動(dòng)畫 |
解釋:設(shè)置進(jìn)度
返回值:float
參數(shù):
解釋:獲取進(jìn)度
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: