|
|
- -- <*
- -- @Author: Saber
- -- @Description: 藏宝图奖池预览界面
- -- *>
- TreasureMapRewardPreviewView = TreasureMapRewardPreviewView or BaseClass(BaseView)
- local TreasureMapRewardPreviewView = TreasureMapRewardPreviewView
-
- function TreasureMapRewardPreviewView:__init()
- self.base_file = "treasureMap"
- self.layout_file = "TreasureMapRewardPreviewView"
- self.layer_name = "Activity"
- self.destroy_imm = true
- self.use_background = true --全屏界面默认使用这个参数,非全屏界面自行设置
- self.hide_maincancas = false --全屏界面需要隐藏主UI
- self.change_scene_close = true --是否切换场景时关闭(弹出界面使用)
-
- self.model = TreasureMapModel:getInstance()
- self.cur_index = 1
- self.load_callback = function ()
- self:LoadSuccess()
- self:AddEvent()
- end
- self.open_callback = function ( )
- self:SwitchTab(self.cur_index)
- end
- self.destroy_callback = function ( )
- self:DestroySuccess()
- end
- end
-
- function TreasureMapRewardPreviewView:Open(index)
- self.cur_index = index or self.cur_index
- BaseView.Open(self)
- end
-
- function TreasureMapRewardPreviewView:LoadSuccess()
- local nodes = {
- "win_bg:raw", "close_btn:obj",
- "item_scroll",
- "item_scroll/Viewport/item_con",
- -- 页签1
- "tab_con/tab1:obj",
- "tab_con/tab1/tab1_selected:obj",
- "tab_con/tab1/tab1_name:tmp",
- "tab_con/tab1/tab1_name_sel:tmp",
- -- 页签2
- "tab_con/tab2:obj",
- "tab_con/tab2/tab2_selected:obj",
- "tab_con/tab2/tab2_name:tmp",
- "tab_con/tab2/tab2_name_sel:tmp",
-
- "tip_con/tip_icon:obj",
- }
- self:GetChildren(nodes)
-
- lua_resM:setOutsideRawImage(self, self.win_bg_raw, GameResPath.GetViewBigBg("tm_preview_bg"))
- end
-
- function TreasureMapRewardPreviewView:AddEvent()
- local function click_event(target)
- if target == self.close_btn_obj then
- self:Close()
- elseif target == self.tab1_obj then
- self:SwitchTab(1)
- elseif target == self.tab2_obj then
- self:SwitchTab(2)
- elseif target == self.tip_icon_obj then -- 查看概率
- UIToolTipMgr:getInstance():AppendLuckyProbTips(424, self.cur_index, 1)
- end
- end
- AddClickEvent(self.close_btn_obj, click_event)
- AddClickEvent(self.tab1_obj, click_event, LuaSoundManager.SOUND_UI.SWITCH)
- AddClickEvent(self.tab2_obj, click_event, LuaSoundManager.SOUND_UI.SWITCH)
- AddClickEvent(self.tip_icon_obj, click_event)
- end
-
- function TreasureMapRewardPreviewView:SwitchTab(index)
- self.cur_index = index
- self.tab1_selected_obj:SetActive(self.cur_index == 1)
- self.tab2_selected_obj:SetActive(self.cur_index == 2)
- self.tab1_name_tmp.text = self.cur_index == 1 and "" or "普通藏宝图"
- self.tab1_name_sel_tmp.text = self.cur_index == 1 and "普通藏宝图" or ""
- self.tab2_name_tmp.text = self.cur_index == 2 and "" or "高级藏宝图"
- self.tab2_name_sel_tmp.text = self.cur_index == 2 and "高级藏宝图" or ""
-
- self:UpdateView()
- end
-
- function TreasureMapRewardPreviewView:UpdateView()
- -- 获取藏宝图奖励数据
- local data = self.model:GetTreasureMapRewardPreviewData(self.cur_index)
- self.reward_item_creator = self.reward_item_creator or self:AddUIComponent(UI.ItemListCreator)
- local info = {
- data_list = data,
- scroll_view = self.item_scroll,
- item_con = self.item_con,
- obj_pool_type = UIObjPool.UIType.AwardItem,
- item_width = 62,
- item_height = 62,
- start_x = 8,
- start_y = -6.5,
- space_x = 16,
- space_y = 16,
- create_frequency = 0.01,
- is_scroll_back_on_update = true,
- alignment = UnityEngine.TextAnchor.UpperLeft,
- on_update_item = function(item, i, v)
- local typeId, lock = GoodsModel:getInstance():GetMappingTypeId(v.rewards[1], v.rewards[2])
- item:SetData(typeId, v.rewards[3], nil, nil, lock)
- item:SetItemSize(62, 62)
- end,
- }
- self.reward_item_creator:UpdateItems(info)
- end
-
- function TreasureMapRewardPreviewView:DestroySuccess( )
-
- end
|