CCSize size = CCDirector::sharedDirector()->getWinSize();
CCSprite* ptSprite = CCSprite::create("player_seekbar_done.png");
CC_BREAK_IF(!ptSprite);
CCProgressTimer *progressTimer = CCProgressTimer ::create(ptSprite);
CC_BREAK_IF(!progressTimer);
// 设置成横向的
progressTimer->setType(kCCProgressTimerTypeBar);
//可以看作是按矩形显示效果的进度条类型
progressTimer->setMidpoint(ccp(0,0));
// 用来设定进度条横向前进的方向从左向右或是从右向左
progressTimer->setBarChangeRate(ccp(1,0));
progressTimer->setPercentage(0);
progressTimer->setPosition(ccp(size.width/2, size.height/2));
this->addChild(progressTimer, 0, 200);
// 使用定时器更新进度条的进度
this->schedule(schedule_selector(SplashScene::updateProgress),0.1f);
void SplashScene::updateProgress(float dt) {
// 根据Tag得到CCProgressTimer
CCProgressTimer * progressTimer = (CCProgressTimer *)this->getChildByTag(200);
// 设置当前百分比
progressTimer->setPercentage(progressTimer->getPercentage() + delta * 2);
if (progressTimer->getPercentage() == 100) {
goToMain();
}
}