COCOS2D-X之圆形进度条的一个简单Demo

来源:未知 责任编辑:责任编辑 发表时间:2013-11-17 14:34 点击:
这应该是游戏中很常见的一个效果.显示某个事件的进度等,在加载资源或者联网的时候经常用到.所以有必要学习学习 p>一、我们直接在COCOS2D-X自带的HelloCpp的工程中添加代码即可.我们在初始化中添加如下代码:

p> 

p>
CCSprite* pSprite = CCSprite::create("A.png");//暂且说是蓝色背景吧  
CCSize szWin = CCDirector::sharedDirector()->getVisibleSize();  
pSprite->setPosition(CCPointMake(szWin.width/2,szWin.height/2));  
this->addChild(pSprite);  
CCProgressTimer *pProgressTimer = CCProgressTimer::create(CCSprite::create("B.png")); //红色圆形进度条   
pProgressTimer->setPosition(CCPointMake(szWin.width/2,szWin.height/2));  
pProgressTimer->setPercentage(0);//显示原形的百分比  
this->addChild(pProgressTimer,0,100);    
this->schedule(schedule_selector(HelloWorld::UpdateProgress));//更加实际情况来更新进度.这里用定时器以便演示  

 

p>二、然后我们需要实现定时器调用的函数.代码如下并附上效果图.

p> 

p>
void HelloWorld::UpdateProgress(float Dt)  
{  
 CCProgressTimer * pProgressTimer = (CCProgressTimer *)this->getChildByTag(100);    
 pProgressTimer->setPercentage(pProgressTimer->getPercentage() + Dt * 10);//更新进度  
 if (pProgressTimer->getPercentage()==100)   
 {  
  this->unschedule(schedule_selector(HelloWorld::UpdateProgress));//取消定时器  
 }  
}  

 

p>

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • cocos2d-x学习笔记(19)--label 、label atlas
    • cocos2d-x学习笔记(23)--地图的使用3--CCTMXLayer
    • Cocos2d-x学习(一):HelloWorld
    • cocos2dx在xcode下开发,编译到android上(2)
    • cocos2d 设置屏幕默认方向
    • Cocos2d-x 2.0 之 Actions “三板斧” 之一
    • cocos2d-x学习笔记(22)--地图的使用2(TMX) --Z-Order、AnchorPoi
    • cocos2d-x学习笔记(18)--游戏打包(windows平台)
    • cocos2d-x学习笔记(16)--spritesheet(精灵表单)
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1