微信简单的排行榜

function IsMiniGame() {
return (Laya.Browser.window.wx != undefined)?true:false;
}

function SortAvatar(a, b)
{
return b["score"] - a["score"];
}

class VItem extends Laya.Box
{
public static WID: number = 500;
public static HEI: number = 200;

private Icon: Laya.Image;
private NickName: Laya.Label;
private Score: Laya.Label;

constructor()
{
super();
this.size(VItem.WID, VItem.HEI);
this.Icon = new Laya.Image();
this.Icon.size(100, 100);
this.Icon.pos(85, -5);
this.addChild(this.Icon);

this.NickName = new Laya.Label();
        this.NickName.text = "";
        this.NickName.fontSize = 35;
this.NickName.color = "#FFFFFF";
this.NickName.stroke = 4;
this.NickName.strokeColor = "#A27619";
this.NickName.pos(160, 5);
this.NickName.align = "center";
this.NickName.valign = "center";
        this.addChild(this.NickName);

this.Score = new Laya.Label();
        this.Score.text = "";
        this.Score.fontSize = 35;
this.Score.color = "#FFFFFF";
this.Score.stroke = 4;
this.Score.strokeColor = "#A27619";
        //this.Score.bold = true;
this.Score.pos(500, 10);
this.Score.align = "center";
this.Score.valign = "center";
        this.addChild(this.Score);
}

private SetIcon(src: string)
{
this.Icon.skin = src;
}

private SetNickName(nickname):void {
this.NickName.text = nickname;
}

private SetScore(score):void {
this.Score.text = "" + score;
}

public Update(data, index)
{
if (!data) {
return;
}
this.SetIcon(data["avatarUrl"]);
this.SetNickName(data["nickname"]);
this.SetScore(data["score"]);
}
}

// 程序入口
namespace Pioneer
{
export class Main
{
private VList:Laya.List;
private HList:Laya.List;
static nSize = 8;
private UserInfo = [];
private FriendList = [];
private nGetscore:number;
static sUserID = "";
constructor()
{
Laya.MiniAdpter.init(true, true);

Laya.init(720, 1280);
this.VList = new Laya.List();
this.VList.itemRender = VItem;
this.VList.repeatX = 1;
this.VList.repeatY = Main.nSize;

this.VList.x = 0;//(Laya.stage.width - VItem.WID * this.VList.repeatX) / 2;
this.VList.y = 10;//(Laya.stage.height - VItem.HEI * this.VList.repeatY) / 2;
this.VList.renderHandler = new Laya.Handler(this, this.UpdateVItem);
 
let self = this;
let sharedCanvas = wx.getSharedCanvas();

wx.onMessage(function(message)
{
if (message.type)
{
if (message.type == 1)
{
//通过接收主域的消息来设置开发数据域的画布大小跟矩阵信息
sharedCanvas.width = message.width;
sharedCanvas.height = message.height;
}
else if (message.type == 3)
{
self.GetData();
}
}
});
}

UpdateVItem(cell: VItem, index: number)
{
cell.Update(this.FriendList[index], index);
}

UpdateFriendList(res)
{
this.CullFriendList(res);
this.UpdateFriendListPage(0, Main.nSize);
}

UpdateFriendListPage(page, size)
{
Laya.stage.addChild(this.VList);
 
this.VList.array = this.FriendList;
}

CullFriendList(res)
{
let data = res.data;
 
this.FriendList = [];
for (let i = 0; i < data.length; ++i)
{
let avatar = {};
avatar["nickname"] = data[i].nickname;
avatar["avatarUrl"] = data[i].avatarUrl;
avatar["score"] = res.data[i].KVDataList[0].value;
this.FriendList.push(avatar);
}
}

GetData()
{
let self = this;
let score = wx.getFriendCloudStorage({
keyList:["score"],
success: function(res) {
self.UpdateFriendList(res);
},
fail: function (res) {
console.log("fail");
},
complete: function() {
console.log("complete");
}
});
}
}
}

微信简单的排行榜

上一篇:微信小程序


下一篇:微信小程序文字超出加省略号