关于list

属性很多,但是常用的就那些吧。官网给出的例子很详细了,不多说。

类似安卓的list。要有单元格(就想适配器一样)。

 list.itemRender =Item;  //设置列表渲染单元格为Item类(注:必须是类,不能是实例化对象,Item需类继承于Box)

list.renderHandler = new Handler(this, updateItem);//渲染单元格时的回调方法

 list.array = data;   //为列表赋值

Laya.stage.addChild(list);            //加载到舞台

/***渲染单元格时的回调方法***/

private function updateItem(cell:Item, index:int):void

        {

            //用获得的数据给图片更换皮肤

            cell.img.skin=cell.dataSource;

        }

这个渲染单元格事的回调方法里面的item让我比较费解。我们可以看到代码只要那样写了,数据就会被渲染出来。

但是我并没有看到数据赋值给item的操作。只有 list.array = data;  

后来多看了几遍代码,发现:一开始 list.itemRender =Item; 把item传给了list的itemRender。

后来list.array = data; 我想应该是渲染的时候。内部做了把data数据传给item的操作了。。额。

然后在记一下获取每一个单元格的监听事件:

  list.selectEnable = true;//设置为可以选择

 list.selectHandler = new Handler(this, onSelect);       //选择单元格时回调方法

/***选择单元格回调***/

        private function onSelect(index:int):void

        {

         var obj:Object=   list.getItem(index) //获取单元格数据源。index为当前选择的索引

         var xx:String=obj [0]; //获取数据源对应的值

        }

你可能感兴趣的:(关于list)