|
|
- GuildBadgeItem = GuildBadgeItem or BaseClass(BaseItem)
- local GuildBadgeItem = GuildBadgeItem
-
- function GuildBadgeItem:__init(parent_wnd,prefab_asset,layer_name)
- self.base_file = "guild"
- self.layout_file = "GuildBadgeItem"
- self.parent_wnd = parent_wnd
- self.layer_name = layer_name
- self.item_width = 80
- self.item_height = 80
- self.model = GuildModel:getInstance()
- self:Load()
- end
-
- function GuildBadgeItem:Load_callback()
- local nodes = {
- "icon:obj:img",
- "tip_bg:obj",
- "tip_bg/tip:tmp",
- }
- self:GetChildren(nodes)
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- end
-
- function GuildBadgeItem:AddEvents( )
- local function clickEvent(target)
- if target == self.icon_obj then
- if self.show_tips then
- self.tip_bg_obj:SetActive(true)
- if self.custom_mask_callback then
- local function callback()
- self.tip_bg_obj:SetActive(false)
- end
- self.custom_mask_callback(callback)
- end
- else
- if self.custom_badge_callback then
- self.custom_badge_callback(self.index, self.data.id)
- end
- end
- end
- end
- AddClickEvent(self.icon_obj, clickEvent)
- end
-
- function GuildBadgeItem:UpdateView( )
- -- if self.data.is_empty then
- -- self.tip_tmp.text = "跨服开启后可获得"
- -- else
- local badge_cfg = Config.Guildbadge[self.data.id]
- self.tip_tmp.text = badge_cfg and Trim(badge_cfg.note) or ""
- -- end
- SetSizeDelta(self.tip_bg, 12 + (self.tip_tmp.preferredWidth > 200 and 200 or self.tip_tmp.preferredWidth), self.tip_tmp.preferredHeight + 27)
- -- lua_resM:setImageSprite(self, self.icon_img, "guildBadge_asset", self.data.is_empty and "guild_badge_empty" or "guild_badge_" .. self.data.id, true)
- lua_resM:setImageSprite(self, self.icon_img, "guildBadge_asset", "guild_badge_" .. self.data.id, true)
- self.item_width = self.icon.sizeDelta.x
- self.item_height = self.icon.sizeDelta.y
- self:SetIconSize()
- end
-
- function GuildBadgeItem:SetData( data, show_tips, custom_mask_callback, index, custom_badge_callback )
- self.data = data
- self.show_tips = show_tips
- self.custom_mask_callback = custom_mask_callback
-
- self.index = index
- self.custom_badge_callback = custom_badge_callback
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- end
-
- function GuildBadgeItem:SetIconSize(width, height)
- self.item_width = width or self.item_width
- self.item_height = height or self.item_height
- if self.is_loaded then
- SetSizeDelta(self.icon, self.item_width, self.item_height)
- self.icon_obj:SetActive(true)
- end
- end
-
- function GuildBadgeItem:__delete( )
-
- end
|