本节学习了cocos的资源加载,这次更改了ccloaderScene里的代码(也可以在自己新建一个类定义载入界面,这里为了方便起见),将载入界面的外观进行了修改,并且在此基础上实施了纹理的添加cc.textureCache.addImage()和删除纹理cc.textureCache.dumpCachedTextureInfo()。下边是ccloaderScene里的部分代码:
首先是init()函数:
init : function(){
var self = this;
//logo
var logoWIDth = 160;
var logoHeight = 200;
// bg
var bgLayer = self._bgLayer = new cc.Layercolor(cc.color(199,21,133,255));
self.addChild(bgLayer,0);
var size = cc.winSize;
//image move to CCScene@R_404_6852@.Js
var FontSize = 24,lblHeight = -logoHeight / 2 + 100;
if(cc._loaderImage){//这个图片在Base64Image中保存,我们可以替换
//loading logo
cc.loader.loadimg(cc._loaderImage,{isCrossOrigin : false },function(err,img){
logoWIDth = img.wIDth;
logoHeight = img.height;
self._initStage(img,cc.visibleRect.center);
});
FontSize = 14;
lblHeight = -logoHeight / 2 - 10;
}
//loading percent加载进度
var label = self._label = new cc.LabelTTF("Loading... 0%","Arial",FontSize);
label.setposition(cc.pAdd(cc.visibleRect.center,cc.p(0,lblHeight)));
label.setcolor(cc.color(180,180,180));
bgLayer.addChild(this._label,10);
cc.textureCache.addImage("res/32636-4.png");
cc.textureCache.dumpCachedTextureInfo();
var mylogo = cc.textureCache.getTextureForKey("res/32636-4.png");
cc.log("成功加载loading界面的32636-4.png图片");
var sp = new cc.Sprite(mylogo);
sp.setposition(size.wIDth/2,300);
this.addChild(sp);
sp.setTag(100);
return true;
}
我们可以通过更改Base64Image里边的代码来修改载入界面的背景图。同样onEnter和onExit方法也如下:
onEnter: function () {
var self = this;
cc.Node.prototype.onEnter.call(self);
self.schedule(self._startLoading,0.3);
},
/**
* custom onExit
*/
onExit: function () {
cc.Node.prototype.onExit.call(this);
var tmpStr = "Loading... 0%";
this._label.setString(tmpStr);
cc.textureCache.removeAllTextures();
cc.textureCache.dumpCachedTextureInfo();
cc.log("加载结束,清除所有纹理");
},
在帧结束时,清理纹理。
作业传送门:
http://www.cocoscvp.com/usercode/2016_05_22/9a01ae13cb017dab984dba22839e8d1873be4fa9/
总结以上是内存溢出为你收集整理的CVP认证学习笔记--李天宇027对资源的管理全部内容,希望文章能够帮你解决CVP认证学习笔记--李天宇027对资源的管理所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)