码迷,mamicode.com
首页 > 其他好文 > 详细

每帧创建一个item

时间:2014-11-14 21:02:29      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   ar   os   sp   数据   div   

-- 加载列表测试
function UIBagController:onLoadTest()
    self.goodsprop = DB.getTable("goodsprop");
    
    local itemAmount = 50;
    -- 计算高度
    local nAmount = 0;
    if itemAmount % self.m_nRColumn == 0 then
        nAmount = math.modf( itemAmount / self.m_nRColumn );
    else
        nAmount = math.modf( itemAmount / self.m_nRColumn + 1 );
    end
    local nHeigh = nAmount * self.m_nHeigh;
    self.m_nInnerHeigh = nHeigh;
    local size = self.scrollPanel:getInnerContainerSize();
    if nHeigh < size.height then
        nHeigh = size.height;
    end
    self.scrollPanel:setInnerContainerSize(CCSizeMake(size.width, nHeigh));
    --print("==宽高==" .. size.width .. " " .. nHeigh)
    local nWidth = size.width;
    local nPosX = 0;
    local nPosY = 0;
    local nIndex = 0;
    nHeigh = nHeigh - self.m_nHeigh;
    local nItemWidth = size.width / self.m_nRColumn;
    if itemAmount ~= nil then
        self.ScheduleId = CCDirector:sharedDirector():getScheduler():scheduleScriptFunc(function ( )
            print("nIndex " .. nIndex)
            print("itemAmount " .. itemAmount)
            if nIndex >= itemAmount then
                CCDirector:sharedDirector():getScheduler():unscheduleScriptEntry(self.ScheduleId);
            end
            local info = self.goodsprop[nIndex + 1];
            local item = self.ImageView_item:clone();
            if nIndex % self.m_nRColumn == 0 then
                nPosY = nHeigh - math.modf(nIndex / self.m_nRColumn) * self.m_nHeigh;
                local itemSize = item:getSize();
                nPosY = nPosY + itemSize.height / 2;
            end
            nPosX = self.m_nPosXStart + math.ceil(nIndex % self.m_nRColumn) * nItemWidth;
            item:setPosition(ccp(nPosX, nPosY));
            item:setVisible(true);
            self.scrollPanel:addChild(item);
            self:loadItem(item);

            nIndex = nIndex + 1;
        end, 0, false); 
    end
end

-- 加载数据
function UIBagController:loadItem(uiwidget)
    local imgItem = tolua.cast(UIHelper:seekWidgetByName(uiwidget, "ImageView_Item"), "ImageView");
    imgItem:loadTexture(ItemM:getIconPath(21419))
end

 

每帧创建一个item

标签:style   blog   io   color   ar   os   sp   数据   div   

原文地址:http://www.cnblogs.com/newlist/p/4098109.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!