PetSupportChoosePetView = PetSupportChoosePetView or BaseClass(BaseView) local PetSupportChoosePetView = PetSupportChoosePetView function PetSupportChoosePetView:__init() self.base_file = "pet" self.layout_file = "PetSupportChoosePetView" self.layer_name = "Activity" self.destroy_imm = true self.use_background = true self.change_scene_close = true self.append_to_ctl_queue = false --是否要添加进界面堆栈 self.need_show_money = false --是否要显示顶部的金钱栏 self.is_set_zdepth = true self.blur_activity_bg = true -- self.use_show_anim = true -- self.use_hide_anim = true self.model = PetModel:getInstance() self.load_callback = function () self:LoadSuccess() self:AddEvent() end self.open_callback = function ( ) self:OpenSuccess() end self.destroy_callback = function ( ) self:DestroySuccess() end end function PetSupportChoosePetView:Open(support_slot) self.support_slot = support_slot BaseView.Open(self) end function PetSupportChoosePetView:LoadSuccess() local nodes = { "ScrollView","ScrollView/Viewport/Content", "empty/girl:raw","empty:obj", } self:GetChildren(nodes) local close_callback = function() self:Close() end self.tabWindowComponent = UITabWindow.New(self.transform, nil, nil, close_callback, self.background_wnd, self.transform,UITabWindow.SizeSmallNoTab,nil,nil,nil) self.tabWindowComponent:SetBackgroundRes("WindowNew2_bg") self.tabWindowComponent:SetTitleText("选择宠物上阵") lua_resM:setOutsideRawImage(self, self.girl_raw, GameResPath.GetRoleBg("team_empty_bg_267_589"), false) end function PetSupportChoosePetView:AddEvent() end function PetSupportChoosePetView:OpenSuccess() self:UpdateView() end function PetSupportChoosePetView:UpdateView() self:UpdatePetScrollView() end function PetSupportChoosePetView:UpdatePetScrollView() local pet_list = self.model:GetPetListAfterSort() self.empty_obj:SetActive(#pet_list == 0) --petitem的点击回调函数 --data追溯至16301协议 local function click_callback(data) --请求宠物上阵协议 self.model:Fire(PetConst.REQUEST_CCMD_EVENT,16308,data.pet_id, self.support_slot) self:Close() end if not self.item_list_com then self.item_list_com = self:AddUIComponent(UI.ItemListCreator) end local info = { data_list = pet_list, item_con = self.Content, item_class = PetSupportChooseItem, item_width = 450, item_height = 119, space_x = 8, space_y = 4, start_x = 6, start_y = -4.5, scroll_view = self.ScrollView, create_frequency = 0.01, on_update_item = function(item, i, v) item:SetData(v,click_callback) end, } self.item_list_com:UpdateItems(info) end function PetSupportChoosePetView:DestroySuccess( ) if self.tabWindowComponent then self.tabWindowComponent:DeleteMe() self.tabWindowComponent = nil end end