// 使用但隐藏滚动条
list.vScrollBarSkin = "";
list.selectEnable = true;
list.selectHandler = new Handler(this, this.onSelect);
list.renderHandler = new Handler(this, this.updateItem);
// 设置数据项为对应图片的路径
var data: Array<String> = [];
//解析二进制已获得关卡队列,先取有效位书
let s = json.my_guanqia.substr(0,this.default_guanqia.length);
data = this.find_StringAllIndex(s);
this.box_arr= data;
list.array = data;
4 个回复
HIPPOPMANANDRAPGIRL
赞同来自:
HIPPOPMANANDRAPGIRL
赞同来自:
HIPPOPMANANDRAPGIRL
赞同来自:
var list = new List();
list.itemRender = Item;
list.repeatX = 3;
list.repeatY = 3;
list.x = 50;
list.y = 100;
list.spaceX = -50;
list.spaceY = 30;
let paihangbang = new Text();
paihangbang.fontSize = 30;
paihangbang.text = "已获得关卡";
paihangbang.x = (list.width - paihangbang.fontSize * 3) / 2;
console.info(list.x + "---"+list.y + "---"+paihangbang.x + "---"+paihangbang.y + "---")
paihangbang.y -= (paihangbang.fontSize + 20);
paihangbang.color="#ffffff";
list.addChild(paihangbang);
// 使用但隐藏滚动条
list.vScrollBarSkin = "";
list.selectEnable = true;
list.selectHandler = new Handler(this, this.onSelect);
list.renderHandler = new Handler(this, this.updateItem);
// 设置数据项为对应图片的路径
var data: Array<String> = [];
//解析二进制已获得关卡队列,先取有效位书
let s = json.my_guanqia.substr(0,this.default_guanqia.length);
data = this.find_StringAllIndex(s);
this.box_arr= data;
list.array = data;
this.list = list;
Laya.stage.addChild(list);
this.hitArea = new Laya.HitArea();
this.hitArea.hit.drawRect(list.x, list.y -100,list.width, list.height, "#000000");
//限制鼠标点击区域
}
find_StringAllIndex(str :String):String[]{
let pos_arr =[];
for(let i=0;i < str.length;i++){
let e = str.charAt(i);
if (e=="1"){
let ii= i+1;
pos_arr.push(ii+"");
}
}
return pos_arr;
}
private updateItem(cell: Item): void {
cell.setImg(cell.dataSource);
}
private onSelect(index: number): void {
console.log("当前选择的索引:" + index);
console.log("目的是哪一关" + this.box_arr[index]);
//被点击的节点
this.guaqia = this.box_arr[index];
let ge = new GameIEntity();
let ui = ge.getvalue(this.guaqia);
(ui as GameUI1).userid_ = this.userid_;
(ui as GameUI1).username_ = this.username_;
(ui as GameUI1).nickname_ = this.nickname_;
this.list.removeSelf();
this.list.destroy();
this.removeSelf();
this.destroy();
Laya.stage.addChild(ui);
}
jumpScene()
{
let ge = new GameIEntity();
let ui = ge.getvalue(this.guaqia);
(ui as GameUI1).userid_ = this.userid_;
(ui as GameUI1).username_ = this.username_;
(ui as GameUI1).nickname_ = this.nickname_;
this.removeSelf();
this.destroy();
Laya.stage.addChild(ui);
}
removeChild_list(){
this.hitArea = new Laya.HitArea();
this.hitArea.hit.drawRect(0, 0, Laya.stage.width, Laya.stage.height, "#000000");
Laya.SoundManager.playSound("sound/hitbutton.wav");
this.list.removeSelf();
this.list.destroy();
}
}
import Box = Laya.Box;
import Image = Laya.Image;
import Text = Laya.Text;
class Item extends Box {
public static WID: number = 400;
public static HEI: number =40;
private text_guanqia: Text;
private text_guanqia_info: Text;
private img: Image;
constructor(){
super();
this.size(Item.WID, Item.HEI);
this.img = new Image();
this.img.width = 200;
this.img.height = 200;
this.height = 230;
this.text_guanqia =new Text();
this.text_guanqia.x = 100;
this.text_guanqia.y = 205;
this.text_guanqia.fontSize = 25;
this.text_guanqia.color="#ffffff";
this.text_guanqia_info =new Text();
this.text_guanqia_info.x = 205;
this.text_guanqia_info.width= 150;
this.text_guanqia_info.fontSize = 15;
this.text_guanqia_info.wordWrap = true;
this.text_guanqia_info.align ="left";
this.text_guanqia_info.color="#ffffff";
this.addChild(this.img);
this.addChild(this.text_guanqia);
this.addChild(this.text_guanqia_info);
}
public setImg(src: any): void {
let tmp = Number(src) ;
this.img.skin ="./puzzlePic/guanqiaMap/pic-"+ tmp+".png";
this.text_guanqia.text = "pic-"+ tmp;
let gf = new GuanqiaEntity();
//guanqia1:{id:"1",publish_date:"20210101",level:"1",author:"官方发布",info:"我可以-四子"};
//获取关卡信息后格式化
let t= gf.getGuanqiaInfo(tmp);
this.text_guanqia_info.text = gf.format_GuanqiaInfo(t);
this.name = "pic-"+ tmp;
var glowFilter: Laya.GlowFilter = new Laya.GlowFilter("#08f6e3", 7, 0, 0);
(this as Laya.Sprite).filters = [glowFilter];
}
Laya_XS
赞同来自: