源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
1.7 KiB

пре 1 месец
  1. --<*
  2. -- @Author: Saber
  3. -- @Description: 创建社团图标item
  4. --*>
  5. GuildCreateIconItem = GuildCreateIconItem or BaseClass(BaseItem)
  6. local GuildCreateIconItem = GuildCreateIconItem
  7. function GuildCreateIconItem:__init(parent_wnd,prefab_asset,layer_name)
  8. self.base_file = "guild"
  9. self.layout_file = "GuildCreateIconItem"
  10. self.parent_wnd = parent_wnd
  11. self.layer_name = layer_name
  12. self.index = false
  13. self.is_selected = false
  14. self.model = GuildModel:getInstance()
  15. self:Load()
  16. end
  17. function GuildCreateIconItem:Load_callback()
  18. self.nodes = {
  19. "select:obj","icon:obj:imgex",
  20. }
  21. self:GetChildren(self.nodes)
  22. self:AddEvents()
  23. if self.need_refreshData then
  24. self:UpdateView()
  25. end
  26. end
  27. function GuildCreateIconItem:AddEvents( )
  28. local function click_event()
  29. if self.callback then
  30. self.callback(self.index)
  31. end
  32. end
  33. AddClickEvent(self.icon_obj, click_event, LuaSoundManager.SOUND_UI.SWITCH)
  34. end
  35. function GuildCreateIconItem:UpdateView( )
  36. self:SetSelect(self.is_selected)
  37. self.transform.anchoredPosition = self.pos
  38. lua_resM:setImageSprite(self, self.icon_imgex, "guildIcon_asset", "guild_icon"..(self.index * 10000 + 1))
  39. self.icon_imgex.gray = true
  40. end
  41. function GuildCreateIconItem:SetData( index, pos, callback )
  42. self.index = index
  43. self.pos = pos
  44. self.callback = callback
  45. if self.is_loaded then
  46. self.need_refreshData = false
  47. self:UpdateView()
  48. else
  49. self.need_refreshData = true
  50. end
  51. end
  52. function GuildCreateIconItem:SetSelect(bool)
  53. self.is_selected = bool
  54. if self.is_loaded then
  55. self.select_obj:SetActive(self.is_selected)
  56. end
  57. end
  58. function GuildCreateIconItem:__delete( )
  59. end