UIListView(列表视图控件):
UIListView是UIScrollView的扩展,创建一个列表视图具体步骤:
1.创建列表视图;2.创建列表视图项
两者有区别,通俗来说,第一步是创建一个框框,第二步则是在框框中添加具体的条目
创建视图:
local list=cc.ui.UIListView.new(params) --params参数的意思,可以创建一个列表视图也就是框框
具体的框框表现形式样式大小,就要靠里面的参数调整了
params:
direction --number类型,表示列表控件的滚动方向(默认为cc.ui.UIScrollView.DIRECTION_VERTICAL垂直方向,而cc.ui.UIScrollView.DIRECTION_HORIZONTAL表水平
方向)
alignment --number类型,表示列表视图项目中各项的对齐方式,默认为垂直居中,可选值如下(
UIListView.ALIGNMENT_LEFT
UIListView.ALIGNMENT_RIGHT
UIListView.ALIGNMENT_VCENTER
UIListView.ALIGNMENT_TOP
UIListView.ALIGNMENT_BOTTOM
UIListView.ALIGNMENT_HCENTER)
UIListView.ALIGNMENT_RIGHT
UIListView.ALIGNMENT_VCENTER
UIListView.ALIGNMENT_TOP
UIListView.ALIGNMENT_BOTTOM
UIListView.ALIGNMENT_HCENTER)
viewRect --rect类型,表示控件显示的区域,cc.rect(x,y,width,height)
scrollbarImgH scrollbarimgV --分别表示水平方向和垂直方向的滚动条图片显示资源
bgColor --c4b类型,表示背景色,nil表示无
bgStartColor
--c4b类型,表示渐变背景开始色
bgEndColor
--c4b类型,表示渐变背景结束色
bg --string类型,
背
景图资源路径
bgScale9 --boolean类型,
背景图是否可缩放
capInsets -- rect类型, 缩放区域
capInsets -- rect类型, 缩放区域
创建列表项:
local item=list:newItem(contentNode)
--新建表项,contentNode表示当前项的内容节点(内容可以是Label或Button等对象),如果不填该参
数,则可以通过item:addContent(contentNode)添加设置显示的节点
之后要设置该项的宽高
item:setItemSize(width,height)
将该项添加到list也就是上一步的框框中
list:addItem(item)
添加完整个项之后,要刷新列表
list:reload() --重新加载
附加:
item:getItemSize()
--有两个返回值,分别是item的宽和高
item:setBg
--为列表项设置背景图片
list:remove(item,true)
--移除指定item
设置列表的触摸删除监听事件
list:onTouch(callBack)
对应的callBack:
local function callBack(event)
local listView=event.listView
获得list对象
if "clicked"==event.name then
listView:removeitem(event.item,true)
--移除项,并显示移除动画,
--event.itemPos可用于获取该项所在列的第几项
end
end
初学,有待补充,谢谢!