coco2dx-lua学习笔记(2)-ListView的处理

local MainScene = class("MainScene", cc.load("mvc").ViewBase)

MainScene.RESOURCE_FILENAME = "Layer2.csb"

function MainScene:onCreate()
    printf("resource node = %s", tostring(self:getResourceNode()))

    --[[ you can create scene with following comment code instead of using csb file.
    -- add background image
    display.newSprite("HelloWorld.png")
        :move(display.center)
        :addTo(self)

    -- add HelloWorld label
    cc.Label:createWithSystemFont("Hello World", "Arial", 40)
        :move(display.cx, display.cy + 200)
        :addTo(self)
    ]]



   -- local  uiNode = display.newSprite("background.png",display.cx,display.cy)


    self:testListView1()






end



function MainScene:testListView1(  )
    -- body

       --加载csb文件的方式
 local uiRoot2=cc.CSLoader:createNode("Layer2.csb")

     -- ListView
    local listView = ccui.ListView:create()

    listView:setDirection(cc.SCROLLVIEW_DIRECTION_VERTICAL)     -- 设置方向为垂直方向  
    listView:setBounceEnabled(true)                             -- 滑动惯性
    -- listView:setBackGroundImage("white_bg.png")              -- 背景图片
    listView:setBackGroundImageScale9Enabled(true)              -- 设置9宫格背景填充
    listView:setContentSize(600,300)  
    listView:setPosition(cc.p(display.cx,display.cy))

    listView:setAnchorPoint(cc.p(0.5,0.5))
    listView:setItemsMargin(0)                                 -- item间距
    --listView:setScrollBarEnabled(false)                         -- 设置滚动条隐藏
    self:addChild(listView)

    -- 创建10个item
    for i = 1,10 do
        local layout = ccui.Layout:create()
        layout:setContentSize(400,300)
        layout:setAnchorPoint(cc.p(0.5,0.5))
        listView:addChild(layout)

        -- 这里创建的是ImageView 实际项目中可能会使用Label和Button
        local image = ccui.ImageView:create("HelloWorld.png")
        image:setPosition(cc.p(listView:getContentSize().width /2,listView:getContentSize().height/2))
        layout:addChild(image)
    end

self:addChild(uiRoot2)

end

如果设置的项是其他的,也可以

cc.FileUtils:getInstance():addSearchPath("res/ui/")

local MainScene = class("MainScene", cc.load("mvc").ViewBase)

MainScene.RESOURCE_FILENAME = "Layer2.csb"

function MainScene:onCreate()
    printf("resource node = %s", tostring(self:getResourceNode()))

    --[[ you can create scene with following comment code instead of using csb file.
    -- add background image
    display.newSprite("HelloWorld.png")
        :move(display.center)
        :addTo(self)

    -- add HelloWorld label
    cc.Label:createWithSystemFont("Hello World", "Arial", 40)
        :move(display.cx, display.cy + 200)
        :addTo(self)
    ]]



   -- local  uiNode = display.newSprite("background.png",display.cx,display.cy)


    --self:testListView1()


 -- local rankView = require("src.app.views.RankView").new();  
 --    self:addChild(rankView.m_uiRoot) 

    -- local bg = display.newSprite("bg_item.png")
    -- bg:setPosition(display.cx, display.cy)
    -- bg:setScale(10)

   -- ListView
    local listView = ccui.ListView:create()
    -- listView:setDirection(cc.SCROLLVIEW_DIRECTION_VERTICAL)  -- 设置方向为水平方向  
    listView:setDirection(cc.SCROLLVIEW_DIRECTION_VERTICAL)     -- 设置方向为垂直方向  
    listView:setBounceEnabled(true)                             -- 滑动惯性
    -- listView:setBackGroundImage("white_bg.png")              -- 背景图片
    listView:setBackGroundImageScale9Enabled(true)              -- 设置背景图片酒店图
    listView:setContentSize(600,300)  
    listView:setPosition(cc.p(display.cx,display.cy)) 
    listView:setAnchorPoint(cc.p(0.5,0.5))
    listView:setItemsMargin(10)                                 -- item间距
    listView:setScrollBarEnabled(false)                         -- 设置滚动条隐藏
    self:addChild(listView)

    -- 创建10个item
    for i = 1,10 do
        local layout = ccui.Layout:create()
        layout:setContentSize(300,300)
        layout:setAnchorPoint(cc.p(0.5,0.5))
        listView:addChild(layout)

        -- 这里创建的是ImageView 实际项目中可能会使用Label和Button
        -- local image = ccui.ImageView:create("HelloWorld.png")
        local text = ccui.Text:create()
        text:setFontSize(22)
        text:setColor(cc.c3b(255,0,0)):setScale(2)
        text:setString("adonai"..i)
        text:setPosition(cc.p(listView:getContentSize().width / 2,listView:getContentSize().height / 2))
        layout:addChild(text)
    end



    -- self:addChild(bg)




end

参考博客:
【1】https://blog.csdn.net/CaiErHao/article/details/78895313

猜你喜欢

转载自blog.csdn.net/u014028392/article/details/80761834