KLAthleticsItem.lua 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. ---@class KLAthleticsItem:UIKmlLuaPanelBase
  2. ---@field view KLAthleticsItemView
  3. local KLAthleticsItem = class(UIKmlLuaPanelBase)
  4. local this =KLAthleticsItem
  5. ---创建时调用一次
  6. function this:Init()
  7. end
  8. ---注册UI事件和服务器消息
  9. function this:RegistEvents()
  10. end
  11. ---创建或者刷新界面数据时调用
  12. function this:Refresh()
  13. end
  14. function this:UpdateUI(data,ranking_id)
  15. self.data = data
  16. self.ranking_id = ranking_id
  17. local name,state = InfoManager.openServerInfo:GetRankNameBySort(data.taskType,data.sort,1)
  18. self.mystate = state
  19. --GUI:Text_setString(self.view.textid,tostring(data.index))
  20. GUI:Text_setString(self.view.name,name)
  21. GUI:Text_setString(self.view.textsort, tostring(data.sort)) ---排名
  22. GUI:setVisible(self.view.textsort,data.sort > 3)
  23. GUI:setVisible(self.view.imgsort,data.sort <= 3)
  24. if data.sort <= 3 then
  25. GUI:Image_loadTexture(self.view.imgsort,"sort_"..data.sort ,"Atlas/TS_OpenServerPanel.spriteatlas")
  26. end
  27. ---已领取状态
  28. GUI:setVisible(self.view.ReciveImg,state == 2)
  29. ---可领取状态
  30. GUI:setVisible(self.view.HighlightImg,state == 1)
  31. self.rewardInfos = data.taskReward
  32. GUI:DataListInitData(self.view.rewards_data, function()
  33. return table.count(self.rewardInfos)
  34. end, function(realIndex)
  35. return self:DataListItemGetFunc(realIndex)
  36. end, function(realIndex, kmlcontrol)
  37. return self:DataListItemInitFunc(realIndex, kmlcontrol)
  38. end, function(realIndex, kmlcontrol)
  39. return self:DataListItemUpdateFunc(realIndex, kmlcontrol)
  40. end)
  41. GUI:DataListUpdateData(self.view.rewards_data)
  42. end
  43. function this:DataListItemGetFunc(realIndex)
  44. end
  45. function this:DataListItemInitFunc(realIndex, kmlcontrol)
  46. end
  47. function this:DataListItemUpdateFunc(realIndex, kmlcontrol)
  48. local data = self.rewardInfos[realIndex+1]
  49. local item = self.view.rewards_data:GetChildControl(realIndex, "item")
  50. local count = "<color=#fbd994>"..SL:GetSimpleNumber(tonumber(data[2]),0).."</color>"
  51. GUI:AddOnClickEvent(item,self,function()
  52. if self.mystate ~=2 then
  53. if self.mystate==1 then
  54. SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_OPEN_SERVER_ACT_RANK_REWARD,{goalValue = self.data.taskType,rankType = self.ranking_id })
  55. else
  56. SL:OpenTips(nil, data[1])
  57. end
  58. end
  59. end)
  60. GUI:Item_UpdataData(item, {
  61. itemid = data[1],
  62. itemcustomcount = count,
  63. })
  64. end
  65. function this:Close()
  66. end
  67. return this