CCProgressTimer 进度条 不仅可以作为进度条 同时CCProgressTimer可以实现一些图片的特效效果。
// 头文件中需要添加相应变量 // GameLayer.h 文件 using namespace cocos2d; // GameLayer布景类 class GameLayer : public cocos2d::CCLayer { // . . . 部分代码省略 public: CCProgressTimer* _progressTimer; // 分数进度条 }; // 实现文件中添加相应的方法 GameLayer.cpp 文件 // init() 初始化的方法中新增代码 bool GameLayer::init() { // 设置分数进度条 CCSprite* sprite1 = CCSprite::creat("pic/task/gk_jindutiao.png"); _progressTimer = CCProgressTimer::creat(sprite1); _progressTimer->setType(kCCProgressTimerTypeBar); // 设置进度条为水平 _progressTimer->setMidpoint(ccp(0,0)); // 可以看作是按矩形显示的进度条类型 _progressTimer->setPercentage(0.0f); // 设置初始化百分比的值 _progressTimer->setBarChangeRate(ccp(1,0)); // 用来设定进度条横向前进的方向从左向右或是从右向左 _progressTimer->setAnchorPoint(ccp(0,0)); // 设置锚点 _progressTimer->setPosition(ccp(20, 0)); backageGroundTop->addChild(_progressTimer, 5); // 得分进度条 this->schedule(schedule_selector(GameLayer::UpdateScoreProgress),1.0f);// 回调方法 } // 得分进度条 void GameLayer::UpdateScoreProgress(float dt) { // 当前所获得的分数_score 占总分数的百分比。 float ct2 = _score/_taskInfo.GetThreeStartScore() * 100.0; // 设置分数的百分比 _progressTimer->setPercentage(ct2); }