QQ 玩一玩獲取使用者影象暱稱以及CocosCreator動態載入網路圖片
阿新 • • 發佈:2018-12-06
文章目錄
QQ 玩一玩獲取使用者影象、暱稱以及CocosCreator載入圖片的幾種方式介紹
1、CocosCreator 載入圖片的幾種方式
- CocosCreator 載入網路圖片
- CocosCreator 載入本地圖片
//設定顯示圖片 function setImg(imgNode, spriteFrame) { imgNode.getComponent(cc.Sprite).spriteFrame = spriteFrame; } //載入網路圖片 function loadImgByUrl(imgNode, remoteUrl, imageType) { if (!imageType) { imageType = "png"; } cc.loader.load({ url: remoteUrl, type: imageType }, function (err, texture) { if (err) { return; } setImg(imgNode, new cc.SpriteFrame(texture)); }); } //載入手機本地圖片 function loadLocal(absolutePath, imgNode) { cc.loader.load(absolutePath, function (err, texture) { if (err) { return; } setImg(imgNode, new cc.SpriteFrame(texture)); }); } module.exports = { loadImgByUrl: loadImgByUrl, loadLocal: loadLocal, setImg: setImg, };
2、QQ 玩一玩通過openId獲取使用者影象、暱稱
BK.MQQ.Account.getNick(GameStatusInfo.openId, function (openId, nick) {
cc.log("nick:"+nick);
});
getHead() { let self = this; let absolutePath = "GameSandBox://_head/" + GameStatusInfo.openId + ".jpg"; let isExit = BK.FileUtil.isFileExist(absolutePath); cc.log(absolutePath + " is exit :" + isExit); //如果指定目錄中存在此影象就直接顯示否則從網路獲取 if (isExit) { cc.loader.load(absolutePath, function (err, texture) { if (err == null) { self.head.getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(texture); } }); } else { BK.MQQ.Account.getHeadEx(GameStatusInfo.openId, function (oId, imgPath) { cc.log("openId:" + oId + " imgPath:" + imgPath);//imgPath為本地圖片顯示圖片也可以使用上文提到的loadLocal var image = new Image(); image.onload = function () { var tex = new cc.Texture2D(); tex.initWithElement(image); tex.handleLoadedTexture(); self.head.getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(tex); } image.src = imgPath; }); } }