我创建了一个listview,里面有5个items,每个items上有一个button。
点击另外一个功能按钮的时候,就清除scrollview里的东西,用的是removeAllItems(),然后重新newItems(),每个item上加一个button。
可是此时再点击button的时候,没有反应。
哪位大大解答一下哈,困惑了2天了
我创建了一个listview,里面有5个items,每个items上有一个button。
点击另外一个功能按钮的时候,就清除scrollview里的东西,用的是removeAllItems(),然后重新newItems(),每个item上加一个button。
可是此时再点击button的时候,没有反应。
哪位大大解答一下哈,困惑了2天了
附上代码如下:
self.lvGrid = cc.ui.UIListView.new {
-- bgColor = cc.c4b(200, 200, 200, 120),
-- bg = "sunset.png",
viewRect = cc.rect(560, 280, 240, 240),
direction = cc.ui.UIScrollView.DIRECTION_VERTICAL}
:onTouch(handler(self, self.touchListener7))
:addTo(self)
self:addItemss()
```
function TestUIListViewScene:addItemss()
if self.lvGrid then
self.lvGrid:removeAllItems()
end
-- add items
for i=1,3 do
local item = self.lvGrid:newItem()
local content
content = display.newNode()
for count = 1, 3 do
local idx = (i-1)*3 + count
cc.ui.UIPushButton.new("Button01.png", {scale9 = true})
:setButtonSize(80, 80)
:setButtonLabel(cc.ui.UILabel.new({text = "Button" .. idx, size = 16, color = display.COLOR_BLUE}))
:onButtonPressed(function(event)
event.target:getButtonLabel():setColor(display.COLOR_RED)
end)
:onButtonRelease(function(event)
event.target:getButtonLabel():setColor(display.COLOR_BLUE)
end)
:onButtonClicked(function(event)
print("TestUIListViewScene - Button " .. idx .. " clicked, jude in botton call back")
self:addItemss()
end)
:align(display.CENTER, 80*count - 40, 40)
:addTo(content)
:setTouchSwallowEnabled(false)
end
content:setContentSize(240, 80)
item:addContent(content)
item:setItemSize(240, 80)
self.lvGrid:addItem(item)
end
self.lvGrid:reload()
end
```