KLPickUpPanel.lua 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. ---@class KLPickUpPanel:UIKmlLuaPanelBase
  2. ---@field view KLPickUpPanelView
  3. local KLPickUpPanel = class(UIKmlLuaPanelBase)
  4. local this =KLPickUpPanel
  5. ---创建时调用一次
  6. function this:Init()
  7. self.pickUpTemplateList = {}
  8. end
  9. ---创建或者刷新界面数据时调用
  10. function this:Refresh()
  11. local pickUpInfo = SL:GetMetaValue(EMetaVarGetKey.GET_ATUO_PICKUP_ITEM)
  12. local tblList = SL:GetConfigTable("cfg_pickdrop_condition")
  13. ---@param v cfg_pickdrop_condition_column
  14. for i, v in pairs(tblList) do
  15. local data = {name = v.groupName[1],pickUpId=v.id,isPickUp = pickUpInfo[v.id]}
  16. ---@type KLPickUpItem
  17. local pickUpTemplate = self.pickUpTemplateList[v.id]
  18. if not pickUpTemplate then
  19. pickUpTemplate = GUI:UIPanel_Open("dev/ui/Setting/Item/KLPickUp/KLPickUpItem",self.view.pickItemList,self,data,true)
  20. else
  21. pickUpTemplate.args = data
  22. pickUpTemplate:Refresh()
  23. end
  24. self.pickUpTemplateList[v.id] = pickUpTemplate
  25. end
  26. end
  27. ---注册UI事件和服务器消息
  28. function this:RegistEvents()
  29. GUI:AddOnClickEvent(self.view.BtnReDefault,self,self.ReDefaultOnClick)
  30. end
  31. function this:ReDefaultOnClick()
  32. SL:ReplyDefaultPickUpSetting()
  33. self:Refresh()
  34. end
  35. function this:Close()
  36. end
  37. return this