CVP认证学习笔记--李天宇027对资源的管理
来源:互联网 发布:余潇洒 知乎 编辑:程序博客网 时间:2024/06/06 03:51
本节学习了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 CCSceneFile.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认证学习笔记--李天宇011节点的Action
- CVP认证学习笔记--李天宇026对数组的使用
- CVP认证学习笔记--李天宇001添加文字层
- CVP认证学习笔记--李天宇002添加图片层
- CVP认证学习笔记--李天宇004实现自定义场景
- CVP认证学习笔记--李天宇006场景切换特效
- CVP认证学习笔记--李天宇012组合动作
- CVP认证学习笔记--李天宇014点击英雄
- CVP认证学习笔记--李天宇015实现绘图节点
- CVP认证学习笔记--李天宇018spriteBatchNode使用
- CVP认证学习笔记--李天宇020实现切图帧动画
- CVP认证学习笔记--李天宇007节点的锚点和坐标
- CVP认证学习笔记--李天宇008Node的父子关系
- CVP认证学习笔记--李天宇009节点的缩放和旋转
- CVP认证学习笔记--李天宇010节点的计划任务
- CVP认证学习笔记--李天宇013在Node的生命周期和图层种处理触摸
- CVP认证学习笔记--李天宇013在Node的生命周期和图层种处理触摸
- 常见动作 代码详注
- vscode 快捷键绑定
- Java指定时间执行任务
- Android 用MediaCodec实现视频硬解码
- 解决执行rails new时,bundle install出错问题
- CVP认证学习笔记--李天宇027对资源的管理
- bootstrap modal 垂直居中对齐
- 《机器学习实战》读书笔记之机器学习基础
- Button点击事件(显隐2)
- python中字典按键或键值排序
- Linux 2.0.2 中select()的主要代码片断——The C10M Problem
- ListView加CheckBox简单实现批量删除
- Android音频实时传输与播放(三):AMR硬编码与硬解码
- Primes Product