cocos2d-x 3.x 进度条 ProgressTimer

实现代码如下:

	/*添加Loading动画*/
	auto sp1 = Sprite::create(LOADING_PROGRESS);

	ProgressTimer*pt = ProgressTimer::create(sp1); //01
	pt->setType(ProgressTimer::Type::BAR); //02
	pt->setBarChangeRate(Vec2(1, 0)); //03
	pt->setMidpoint(Vec2(0, 0)); //04
	pt->runAction(ProgressFromTo::create(5, 0, 100)); //05
	pt->setPosition(Vec2(visibleSize.width / 2 + origin.x, visibleSize.height / 2 + origin.y));
	this->addChild(pt);

01. ProgressTimer是Node的子类。该类根据百分比来渲染显示内部的Sprite对象。变化方向包括径向(Radial),水平(Horizontal)或者垂直方向(vertical)。

02.进度条类型:RADIAL(逆时针径向)、BAR(条形,一般是条形)。

03.setBarChangeRate 允许BAR类型进度条按照特定速率移动:是定义方向:Vec2(0,1)是自下而上、Vec2(1,0)是自左向右。(API没怎么看明白,,好像和实际情况不太一样。。。存疑)

04.setMidpoint 是定义进度条开始位置:如果进度条类型是RADIAL,则setMidpoint更改中心点;如果进度条类型是BAR,则setMidpoint更改条形的成长;

从左到右Vec2(0,y);从右到左Vec2(1,y);从下到上Vec2(x,0);从上到下Vec2(x,1)。(测试了一下y,x的改变对效果貌似没什么影响)

05.根据持续时间、起始百分数、终止百分数,播放进度条。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章