LayaBox入门基础之JS代码实现按钮增加功能
生活随笔
收集整理的這篇文章主要介紹了
LayaBox入门基础之JS代码实现按钮增加功能
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2.2.3 實現List增加功能
? 實現List增加,需要用到LayaAir引擎laya.display.Sprite中的事件偵聽on()方法對鼠標點擊事件CLICK進行偵聽,以及laya.ui.List API中添加單元格數據源的方法addItem();
?
? (圖25)
?
? (圖26)
(function()
{
var Handler= Laya.Handler;
var Loader= Laya.Loader;
var WebGL = Laya.WebGL;
var Event = Laya.Event;
var Stage = Laya.Stage;
var ListDemoView;
var arr;
(function()
{
Laya.init(640,1136,WebGL);
Laya.stage.bgColor = "#ffffff";
Laya.stage.scaleMode = Stage.SCALE_SHOWALL;
//預加載資源文件后執行回調
Laya.loader.load(["res/atlas/ListPage.atlas","res/atlas/template/ButtonTab.atlas"], Handler.create(this, onLoaded));
})();
function onLoaded(){
ListDemoView = new ListPageUI();
Laya.stage.addChild(ListDemoView);
//獲得List模擬數據,并渲染
getListData();
//偵聽增加按鈕點擊事件
ListDemoView.add.on(Event.CLICK,this,onAddClick);
}
function getListData(){
//添加list數據
arr = [];
for (var i = 1; i <= 30; i++) {
arr.push({listNumber: {text:i}});
}
ListDemoView._list.vScrollBarSkin='';//添加list滾動條功能(UI不可顯示)
ListDemoView._list.array = arr;//數據賦值
//list渲染函數
ListDemoView._list.renderHandler = new Handler(this, onRender);
}
function onRender(cell,index){
//如果索引不再可索引范圍,則終止該函數
if(index > arr.length)return;
//獲取當前渲染條目的數據
var data = arr[index];
//根據子節點的名字listNumber,獲取子節點對象。
var listNumber = cell.getChildByName("listNumber") ;
//label渲染列表文本(序號)
listNumber.text=data.listNumber.text;
}
function onAddClick(){
//添加單元格數據源
ListDemoView._list.addItem({listNumber: {text:arr.length+1}});
}
})();
? 詳情直接查看代碼與注釋。
? 代碼運行效果如圖27所示:
?
? (圖27)實現列表增加效果
總結
以上是生活随笔為你收集整理的LayaBox入门基础之JS代码实现按钮增加功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS 使用 MailCore2
- 下一篇: 对M站、h5、PC端、APP的理解