cocos2d-x 3.0 Loading界面实现(2)
来源:未知 责任编辑:责任编辑 发表时间:2015-01-01 13:14 点击:次
void LoadingScene::loadingLogic(float dt){
_curProgress ++;
if(_curProgress > 100){
//begin the game choose scene
Director::getInstance()->replaceScene(TransitionFade::create(0.5f,ChooseScene::createScene()));
return;
}
_progressBar->setValue(_curProgress);
int startX = _progressBar->getPositionX() - _progressBar->getContentSize().width / 2 +10 ;
int unitX = _progressBar->getContentSize().width / 100;
_barTip->setPositionX(startX + _curProgress * unitX);
char str[10] = {0};
sprintf(str,"%d%",_curProgress);
_barTipLabel->setString(str);
}咦,看到这里有没有觉得哪里不对?好吧,被你发现了,说好的资源加载哪里去了?而且资源加载的进度百分比怎么算的呢?
好吧,继续,比如我们有一百张图片资源。。。(为什么不是99张?)
void LoadingScene::onEnter(){
Layer::onEnter();
//加载一次图片资源就回调一次
Director::getInstance()->getTextureCache()->addImageAsync("1.png",this,callfunc_selector(LoadingScene::loadingCallback));
...
...
...
Director::getInstance()->getTextureCache()->addImageAsync("100.png",this,callfunc_selector(LoadingScene::loadingCallback));
}然后回调函数实现,每次执行动态更新提示框的位置和文字标签的信息,到了第一百次,就开启另外一个界面,恩,还是这么简单。。。
void LoadingScene::loadingCallback(){
_curProgress ++;
if(_curProgress > 100){
//begin the game choose scene
Director::getInstance()->replaceScene(TransitionFade::create(0.5f,ChooseScene::createScene()));
return;
}
_progressBar->setValue(_curProgress);
int startX = _progressBar->getPositionX() - _progressBar->getContentSize().width / 2 +10 ;
int unitX = _progressBar->getContentSize().width / 100;
_barTip->setPositionX(startX + _curProgress * unitX);
char str[10] = {0};
sprintf(str,"%d%",_curProgress);
_barTipLabel->setString(str);
}其实思路都差不多啦,大概就是根据( 已经加载的图片数 / 总图片资源数)百分比来算出进度条的百分比来滑动,或者干脆把进度条最大值设置成图片资源总数,加载多少就滑动多少。。
==================================
恩,就这样子吧,好困的夜晚。。晚安
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 进入详细评论页>>
您可能感兴趣的文章
- Cocos2dx游戏开发系列笔记19:vs2013下开发cocos2dx3
- [C/OC的那点事儿]Objective-C实现学生成绩管理系统
- Cocos2d-x学习(五):cocos2d-x解析json(使用libjso
- quick-cocos2d-x教程12:实现文本和密码输入界面
- leetcode:Minimum Window Substring(最小覆盖子串)【
- cocos2dx 在windows上实现键盘输入
- 十一 手游开发神器 cocos2d-x editor 之音乐和音效
- 《BREW进阶与精通——3G移动增值业务的运营、定
- cocos2d-x Jni c++ java互调 并且相互刷新UI控件最简
- Container状态机详解

![cocos2d_x+lua[2]](/uploads/allimg/131030/110J64609-0-lp.jpg)








