Cocos2d-lua示例(一)排行榜之TableView

       TableView是在实际开发经常用到的控件,它可以重复利用所创建的列表项,这样就避免了界面卡顿。效果和ScrollView做的排行榜效果差不多。不同之处是ScrollView右边有滚动条,而TableView没有。TableView就没有问题了?不是的,TableView还有隐藏的问题,这篇我们就来看看如何用TableView以及解决在实际开发中的一些问题。


一、TableView

1.RankView.lua代码

local RankView = class("RankView")

function RankView:ctor()
    self:init();
end

function RankView:init()
    --加载Rank.json文件
    self.m_uiRoot = ccs.GUIReader:getInstance():widgetFromJsonFile("ui/Rank.json");

    local panelMain = self.m_uiRoot:getChildByName("Panel_Main");

    --获得滚动层
    self.m_scrollViewRankList = panelMain:getChildByName("ScrollView_RankList");

    --获得列表项
    self.m_panelRankItem = self.m_scrollViewRankList:getChildByName("Panel_RankItem");
    --引用计数加1,记住retain,必定会release(引用计数减1)
    self.m_panelRankItem:retain();
    --列表项从父节点中移除
    self.m_panelRankItem:removeFromParent();
    
    self:initTableView();
end

function RankView:initTableView()
    --scroll的尺寸
    local sizeScroll = self.m_scrollViewRankList:getContentSize()
    --scroll的位置坐标
    local positionScroll = cc.p(self.m_scrollViewRankList:getPositionX(), self.m_scrollViewRankList:getPositionY());
    --scroll从父节点移除
	self.m_scrollViewRankList:removeFromParent();

    local panelMain = self.m_uiRoot:getChildByName("Panel_Main");

    --创建TableView
    self.m_tableView = cc.TableView:create( cc.size( sizeScroll.width, sizeScroll.height) );
    --TabelView添加到PanleMain
	panelMain:addChild(self.m
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值