12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- ---@class KLCallSkillPanel:UIKmlLuaPanelBase
- ---@field view KLCallSkillPanelView
- local KLCallSkillPanel = class(UIKmlLuaPanelBase)
- local this =KLCallSkillPanel
- ---创建时调用一次
- function this:Init()
- self.skillData_all_item = {}
- self.skillData = {}
- local skills = SL:GetMetaValue(EMetaVarGetKey.GET_ME_ALL_SKILL)
- if skills then
- ---@param v Skill
- for i, v in pairs(skills) do
- if v.skillTbl.group == ESkillGroup.call then
- table.insert(self.skillData,v.skillId)
- end
- end
- end
- table.insert(self.skillData,0)
- end
- ---创建或者刷新界面数据时调用
- function this:Refresh()
- GUI:DataListInitData(self.view.callSkillList,function()
- return self:SkillDataListItemCountFunc()
- end,function(realIndex)
- return self:SkillDataListItemGetFunc(realIndex)
- end,function(realIndex, kmlcontrol)
- return self:SkillDataListItemInitFunc(realIndex, kmlcontrol)
- end, function(realIndex, kmlcontrol)
- return self:SkillDataListItemUpdateFunc(realIndex, kmlcontrol)
- end)
- GUI:DataListUpdateData(self.view.callSkillList)
- end
- ---注册UI事件和服务器消息
- function this:RegistEvents()
- GUI:AddOnClickEvent(self.view.closeBtn,self,self.CloseBtnOnClick)
- end
- function this:CloseBtnOnClick()
- GUI:UIPanel_Close("dev/ui/Setting/Panel/KLCallSkill/KLCallSkillPanel")
- end
- function this:SkillDataListItemCountFunc()
- return #self.skillData
- end
- function this:SkillDataListItemGetFunc(realIndex)
- local skillId = self.skillData[realIndex + 1]
- local item = GUI:UIPanel_Open("dev/ui/Setting/Item/KLSkill/KLSkillItem",self.view.callSkillList,self,skillId,true)
- self.skillData_all_item[item.view.root] = item
- return item.view.root
- end
- function this:SkillDataListItemInitFunc(realIndex, kmlcontrol)
- end
- function this:SkillDataListItemUpdateFunc(realIndex, kmlcontrol)
- local skillId = self.skillData[realIndex + 1]
- self.skillData_all_item[kmlcontrol]:RefreshItem(skillId)
- end
- function this:Close()
- end
- return this
|