LayaBox List使用记录 创建 增加 修改 滚动

在这里插入图片描述
官方链接:https://ldc.layabox.com/doc/?nav=zh-ts-6-0-0
看过官方文档后 如上图进行四步操作
1 红框部分是每个item的内容,创建好后,选中这几个控件然后ctrl+B将他们转化为容器,点确定,黄框部分就被创建出来了,
2同样的操作 Ctrl+B 将黄框部分转化为list ,这时候蓝色的list的就被创建了 ,根据图里的层级关系 很容易理解,
3然后右键点击蓝色list,创建UI组件 HScrollBar,用来滚动list
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4 如上图
box 的renderType属性改为render
List repeatY 表示竖排数目spaceY表示间隔
Label box下的控件命名是注意不在var里 而是在name里,在name中命名渲染时查找通过getChildByName 才能找到

5用代码添加修改内容 和 设置滚动
(1)

let dataSource = []
        for(let i=0;i<20;i++){
            let data = null;
            data = {
                _neirong:{text:"这是一封简单的邮件"+i},
                _fajianren:{text:"发件人:系统"},
                _time:{text:"2019-1-17 10:50"},
                _newImg:{alpha:0},
                _selectCheck:{selected:false},
            }
            dataSource.push(data)
        }
        this._ui._mailList.array = dataSource//数据赋值

20条item就被添加了 ,以data中的_neirong举例, _neirong:{text:“这是一封简单的邮件”+i}, _neirong是想赋值的控件名称,后面跟着属性赋值 可以是内容,显示 ,状态等
(2)设置滚动 ,添加scrollBar控件后 用一行代码可以搞定

//添加list滚动条功能
        this._ui._mailList.vScrollBarSkin='';

(3)修改内容

this._ui._mailList.array[i]._selectCheck.selected = true

1》设置所有item的 checkBox为选中状态,第一次直接修改 array中的 _selectCheck 控件的select属性为true,看到状态改变成功,但是只也隐藏的item被修改了,当前显示下的item没有刷新,滚动后重新看才刷新,说明方法不可用 注释掉
2》看laya.ui.js 文件 引擎提供的正确修改方法是setItem方法

	/**
	*设置单元格数据源。
	*@param index 单元格索引。
	*@param source 单元格数据源。
	*/
	__proto.setItem=function(index,source){
		this.changeItem(index,source);
	}

正确修改完所有checkbox状态

for(let i=0;i<this._ui._mailList.array.length;i++){
                  //  this._ui._mailList.array[i]._selectCheck.selected = true
                    this._ui._mailList.setItem(i,{_selectCheck:{selected:true},})
                    log('[Mail-]'+i)
                }

测试一下laya的scrollTo 滚动,实时 快速 ,感觉laya的list做的比creator性能更好一些,而creator的list比laya更灵活。
继续使用laya 多了解一些 ,再回头来和cocoscreator比较

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值