quick-cocos2d-x中的ListView详解

时间:2020-12-15 23:29:35

在quick-cocos2dx中创建ListView的大步骤有2步:

1 创建一个ListView

2 创建ListView的Items

首先是创建一个ListView,ListView的创建与PageView一致,new 后面跟table,因此创建的参数顺序是没有问题的。

self.list_view = cc.ui.UIListView.new {
    bg,            --背景图(默认无)
    bg_color,      --背景色(默认白色)
    bg_scale9,     -- 是否使用9宫格
    view_rect,     --整个listview的大小,table_rect cc.rect{top, left, width, height}
    direction,     --滚动方向,横向或纵向,默认横向
    scrollbar_img, --滚动条图片
}:OnTouch(handle(self, self.onTouch)
:addTo(self)
它的原型为

cc.ui.UIListView.new {}

若只有这一句,则创建一个空的ListView啥都没有,填充好这些参数以后,才会出现控件

接下来是添加Items。代码如下

for item_index = 1, 20 do
    local item = self.list_view:newItem()        --要添加的子项
    local content      -- 子项的内容
    content = cc.ui.UILable.new(                 --这里子项是Label
    {
        text  = 'item'..item_index,
        size  = 20,
        align = cc.ui.TEXT_ALIGN_CENTER,
        color = display.COLOR_WHITE
    }
)
    item:addChild(content)       -- 子项添加内容
    item:setItemSize(100, 30)
    self.list_view:addItem(item)
end
self.list_view:reload()        --刷新list,让其显示
整个添加过程和PageView差不多一样的。

demo里给出的那个grid的例子实际上是个vertical方向的ListView

只是每排放3个Button按钮而已。


相关文章