UIDojoBadgeUpView.lua 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. local UIDojoBadgeUpView = require("UIDojo/UIDojoBadgeUpView_Generate")
  2. function UIDojoBadgeUpView:OnAwake(data)
  3. self.controller = require("UIDojo/UIDojoBadgeUpCtr"):new()
  4. self.controller:Init(self)
  5. self.controller:SetData(data)
  6. end
  7. function UIDojoBadgeUpView:AddEventListener()
  8. end
  9. function UIDojoBadgeUpView:FillContent(data, uiBase)
  10. self.uiBase = uiBase
  11. local gameObject = self.uiBase:GetRoot()
  12. if gameObject ~= nil then
  13. self.gameObject = gameObject
  14. self.transform = gameObject.transform
  15. end
  16. self:InitGenerate(self.transform, data)
  17. self:Init()
  18. end
  19. function UIDojoBadgeUpView:Init()
  20. local _times = GlobalConfig.Instance:GetConfigStrValue(170);
  21. local _timeStrs = string.split(_times, ";")
  22. local _delayChangeTime, _delayCloseTime = tonumber(_timeStrs[1]), tonumber(_timeStrs[2])
  23. self:SetLastBadge(); --先显示上一个段位的信息
  24. self._delayChange = ManagerContainer.LuaTimerMgr:AddTimer(_delayChangeTime, 1, self, self.SetCurBadge, nil);
  25. self._delayClose = ManagerContainer.LuaTimerMgr:AddTimer(_delayCloseTime, 1, self, self.CloseThisPage, nil);
  26. end
  27. function UIDojoBadgeUpView:RemoveEventListener()
  28. ManagerContainer.LuaEventMgr:Unregister(self.uiData.name)
  29. end
  30. function UIDojoBadgeUpView:AddUIEventListener()
  31. ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name)
  32. end
  33. function UIDojoBadgeUpView:OnHide()
  34. end
  35. function UIDojoBadgeUpView:OnShow(data)
  36. self.controller:SetData(data)
  37. end
  38. function UIDojoBadgeUpView:OnClose()
  39. end
  40. function UIDojoBadgeUpView:OnDispose()
  41. self.controller:OnDispose()
  42. if self._delayChange ~= nil then
  43. ManagerContainer.LuaTimerMgr:RemoveTimer(self._delayChange);
  44. self._delayChange = nil
  45. end
  46. if self._delayClose ~= nil then
  47. ManagerContainer.LuaTimerMgr:RemoveTimer(self._delayClose);
  48. self._delayClose = nil
  49. end
  50. end
  51. function UIDojoBadgeUpView:CloseThisPage()
  52. ManagerContainer.LuaUIMgr:ClosePage(Enum.UIPageName.UIDojoBadgeUp)
  53. end
  54. --设置当前段位的信息
  55. function UIDojoBadgeUpView:SetCurBadge()
  56. local _data = self.controller:GetCurArenaLevelData();
  57. if _data ~= nil then
  58. self:SetBadge(_data.ArenaLevelName, _data.LevelIcon);
  59. end
  60. end
  61. --设置上一个段位的信息
  62. function UIDojoBadgeUpView:SetLastBadge()
  63. local _data = self.controller:GetLastArenaLevelData();
  64. if _data ~= nil then
  65. self:SetBadge(_data.ArenaLevelName, _data.LevelIcon);
  66. end
  67. end
  68. --设置段位的显示,包括段位名和段位对应的icon
  69. function UIDojoBadgeUpView:SetBadge(_badgeName, _badgeIconPath)
  70. self.textName.text.text = _badgeName;
  71. CommonUtil.LoadIcon(self, _badgeIconPath, function (sprite)
  72. self.icon.image.sprite = sprite
  73. end)
  74. end
  75. return UIDojoBadgeUpView