安卓手机使用loading界面时一开始用CCTextureCache::sharedTextureCache()->addImageAsync感觉会卡
2013-07-28 14:56
555 查看
大家好,最近忙于项目比较少发博文,现在发自己发现的问题跟大家共享一下!在我用cocos2dx做游戏时,本想用一个loading界面使一开始下一个跳转以及之后的跳转界面都不卡(这个是我的本意)。后来就根据网上大家都建议使用的异步加载图片的方法去加载图片纹理
//对话的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("dialogue.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//对话的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("ioc.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//栅栏的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("column.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//天空2的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("sky2.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//大地2的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("grassland2.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//花朵的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("flower.png",this,callfuncO_selector(StartLayer::gamemainCallback));
结果发现在主界面时来跳转到另外一个界面时还是很卡(用android手机调试),但同时也发现一个奇怪的现象就是只是第一次跳转会卡,之后就不会了。所以我就在loading界面中加上了create的函数但不加到画面中,使他第一次加载在loading界面中,结果发现在手机上就不卡了,应该是得在create一次才能真正把纹理加载到内存里面,本人只能如此理解,如果大家有更好的理解,请留言哈
//对话的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("dialogue.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//对话的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("ioc.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//栅栏的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("column.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//天空2的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("sky2.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//大地2的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("grassland2.png",this,callfuncO_selector(StartLayer::gamemainCallback));
//花朵的图片纹理
CCTextureCache::sharedTextureCache()->addImageAsync("flower.png",this,callfuncO_selector(StartLayer::gamemainCallback));
结果发现在主界面时来跳转到另外一个界面时还是很卡(用android手机调试),但同时也发现一个奇怪的现象就是只是第一次跳转会卡,之后就不会了。所以我就在loading界面中加上了create的函数但不加到画面中,使他第一次加载在loading界面中,结果发现在手机上就不卡了,应该是得在create一次才能真正把纹理加载到内存里面,本人只能如此理解,如果大家有更好的理解,请留言哈
CCTexture2D *texture2d=CCTextureCache::sharedTextureCache()->textureForKey(image); CCSprite* sprite = CCSprite::createWithTexture(texture2d);
相关文章推荐
- Cocos2D-x , CCTextureCache的多线程加载原理和使用方法
- 手机商城第一天 loading界面,主界面与baseFragment的创建,Bufferknife的使用
- CCSpriteFrameCache、CCTextureCache的使用
- 内存管理CCTextureCache::sharedTextureCache()->dumpCachedTextureInfo();
- CCTextureCache的多线程加载原理和使用
- 使用CCAnimate、CCAnimation、CCTextureCache、CCTexture2D来实现动画效果
- cocos2d-x CCTextureCache使用
- cocos2d-x CCTextureCache使用
- cocos2d-x中CCTextureCache图片资源的异步加载<转>
- [Phonegap+Sencha Touch] 移动开发39 某些安卓手机的webview使用location.href="tel:123456"不能调到打电话的界面
- Cocos2d-x中的 CCSpriteFrameCache , CCTextureCache的使用
- Android 使用RxJava+Retrofit +Realm 组合加载数据 <读取缓存 显示 请求网络数据 缓存最新数据 更新界面>(一)
- 一起学微软Power BI系列-使用技巧(3)Power BI安卓手机版安装与体验
- 安卓手机无法root的情况下使用busybox
- 安卓手机终端访问使用tracetool+HttpAnalyzer截包抓取
- 分享一个使用安卓手机平板做windows电脑第二显示屏软件spacedesk
- 博客园 首页 新随笔 联系 订阅 管理 如何使用电脑上的谷歌浏览器来调试安卓手机上的移动端页面
- 安卓开发新手篇之如何新建工程并使用手机进行测试
- 【Android 界面效果17】Android手机平板两不误,使用Fragment实现兼容手机和平板的程序