|
|
- SupremeVipShopView = SupremeVipShopView or BaseClass(BaseItem)
- local SupremeVipShopView = SupremeVipShopView
-
- function SupremeVipShopView:__init()
- self.base_file = "supremeVip"
- self.layout_file = "SupremeVipShopView"
- self.model = SupremeVipModel:getInstance()
-
- self:Load()
- end
-
- function SupremeVipShopView:Load_callback()
- self.nodes = {
- "starDiamondBtn:obj", "starIcon:img",
- "des1Img:img",
- "ScrollView", "ScrollView/Viewport/Content",
- "starDiamondNum:tmp",
- "shopBg:img",
- }
- self:GetChildren(self.nodes)
-
- -- self.model:Fire(SupremeVipConst.REQUEST_CCMD_EVENT,45104)--查询商城限购数据
- lua_resM:setOutsideImageSprite(self,self.des1Img_img,GameResPath.GetSupremeVipIcon("supremeVip_des_7_pointfilter"),false,nil)
- lua_resM:setOutsideImageSprite(self,self.shopBg_img,GameResPath.GetSupremeVipIcon("supremeVip_right_bg_long"),false,nil)
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- end
-
- function SupremeVipShopView:AddEvents( )
- local on_click = function ( click_obj )
- if self.starDiamondBtn_obj == click_obj then
- OpenFun.Open(450,1)
- end
- end
- AddClickEvent(self.starDiamondBtn_obj, on_click)--获得星钻
-
-
- --查询商城限购数据后,刷新商城item展示
- local function update_shop_con()
- self:UpdateShopCon()
- end
- self:BindEvent(self.model, SupremeVipConst.UPDATE_SUPREME_VIP_SHOP_CON,update_shop_con)
-
- --星钻数量变更
- local function update_star_diamond_num()
- self:UpdateStarDiamondNum()
- end
- self:BindEvent(self.model, SupremeVipConst.REFRESH_STAR_DIAMOND_NUM,update_star_diamond_num)
- end
-
- function SupremeVipShopView:UpdateView( )
- self:UpdateStarDiamondNum()
- self:UpdateShopCon()
- end
-
- --刷新星钻数
- function SupremeVipShopView:UpdateStarDiamondNum( )
- self.starDiamondNum_tmp.text = self.model.star_gold
- end
-
- --刷新商城列表
- function SupremeVipShopView:UpdateShopCon( )
- local shop_cfg = self.model:GetSupremeVipShopCfg()
-
- -- if not self.item_list_com then
- -- self.item_list_com = self:AddUIComponent(UI.ItemListCreator)
- -- end
- -- local info = {
- -- data_list = shop_cfg,
- -- item_con = self.Content,
- -- item_class = SupremeVipShopItem,
- -- item_width = SupremeVipShopItem.Width,
- -- item_height = SupremeVipShopItem.Height,
- -- space_x = 14,
- -- space_y = -5,
- -- start_x = 2,
- -- start_y = 7,
- -- scroll_view = self.ScrollView,
- -- -- create_frequency = 0.01,
- -- reuse_item_num = 999,
- -- on_update_item = function(item, i, v)
- -- item:SetData(v,i)
- -- end,
- -- }
- -- self.item_list_com:UpdateItems(info)
-
- self.item_list = self.item_list or {}
- for k,v in pairs(self.item_list) do
- v:SetVisible(false)
- end
-
- local offset_x = 14+146
- local offset_y = -5+181
- local show_col = 4
- for i,v in ipairs(shop_cfg) do
- local item = self.item_list[i]
- if not item then
- item = SupremeVipShopItem.New(self.Content)
- self.item_list[i] = item
- end
- item:SetVisible(true)
- item:SetAnchoredPosition(2+offset_x*((i-1)%show_col), 7-offset_y*math.floor((i-1)/show_col))
- item:SetData(v,i)
- end
- SetSizeDeltaY(self.Content,math.ceil(#shop_cfg/show_col)*offset_y+8)
-
- end
-
- function SupremeVipShopView:SetData( data )
- self.data = data
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- end
-
- function SupremeVipShopView:__delete( )
- for k,v in pairs(self.item_list) do
- v:DeleteMe()
- v = nil
- end
- self.item_list = {}
- end
|