这个例子是官方例子中的一个。这里将其简单的加了些注释。
local TestUIPageViewScene = class("TestUIPageViewScene",function()
return display.newScene("TestUIPageViewScene")
end)
-- ctor 相对于cocos中的init()函数
function TestUIPageViewScene:ctor()
self:createPageView()
end
function TestUIPageViewScene:createPageView()
self.pv = cc.ui.UIPageView.new({
viewRect = cc.rect(80,280,780,480) , --设置位置和大小
column = 3 , row = 3, --列和行的数量
padding = {left = 20 , right = 20 , top = 20 , bottom = 20} , --整体的四周距离
columnSpace = 10 , rowSpace = 10 --行和列的间距
})
:onTouch(handler(self,self.touchListener))
:addTo(self)
for i = 1 , 18 do
local item = self.pv:newItem()
local content
content = display.newColorLayer(
cc.c4b(math.random(250),
math.random(250),
math.random(250),
math.random(250)))
content:setContentSize(240 , 140)
content:setTouchEnabled(false)
item:addChild(content) -- 为每个单独的item添加一个颜色图块
self.pv:addItem(item) --为pageview添加item
end
self.pv:reload() --需要重新刷新才能显示
end
function TestUIPageViewScene:touchListener(event)
dump(event , "TestUIPageViewScene - event")
local listView = event.listView
if 3 == event.itemPos then
listView:removeItem(event.item,true)
end
end
return TestUIPageViewScene
原文:http://blog.youkuaiyun.com/qqmcy/article/details/40428583