KLLevelItem.lua 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. ---@class KLLevelItem:UIKmlLuaPanelBase
  2. ---@field view KLLevelItemView
  3. ---@field args cfg_rep_column
  4. ---@field baseUI KLActivityDetailPanel
  5. local KLLevelItem = class(UIKmlLuaPanelBase)
  6. local this =KLLevelItem
  7. ---创建时调用一次
  8. function this:Init()
  9. end
  10. ---创建或者刷新界面数据时调用
  11. function this:Refresh()
  12. end
  13. ---注册UI事件和服务器消息
  14. function this:RegistEvents()
  15. GUI:SetToggleOnValueChange(self.view.KLLevel,self,self.LevelOnToggleValueChange)
  16. end
  17. function this:LevelOnToggleValueChange(id,agrs,data)
  18. local isToggle = data[1]
  19. if isToggle then
  20. SL:onLUAEvent(SELECT_LEVEL_STAGE,self.args)
  21. end
  22. end
  23. function this:RefreshItem(data)
  24. self.args = data
  25. local level = SL:GetMetaValue(EMetaVarGetKey.LEVEL)
  26. local levelRange = self.args.name[1]
  27. local color = "#e6e6e6"
  28. local isMeet = level >= self.args.level[1] and level <= self.args.level[2]
  29. if isMeet then
  30. color = "#ffffff"
  31. end
  32. GUI:SetIsOnWithoutNotify(self.view.KLLevel,self.baseUI.curSelectLevelStage == self.args.repLevel)
  33. levelRange = GUIUtil.GetColorText(levelRange,color)
  34. GUI:Text_setString(self.view.levelName,levelRange)
  35. GUI:setVisible(self.view.noClick,not isMeet)
  36. GUI:setSwallowTouches(self.view.KLLevel,not isMeet)
  37. end
  38. function this:Close()
  39. end
  40. return this