|
|
- UITalkBoard = UITalkBoard or BaseClass(BaseItem)
- function UITalkBoard:__init()
- self.layout_file = "TalkBoard"
- self.base_file = "uiComponent"
-
-
- self:Load()
- end
-
- function UITalkBoard:__delete()
- if self.camera_move_id then
- GlobalEventSystem:UnBind(self.camera_move_id)
- self.camera_move_id = nil
- end
- if self.camera_change_size_id then
- GlobalEventSystem:UnBind(self.camera_change_size_id)
- self.camera_change_size_id = nil
- end
-
- if self.delay_timer then
- GlobalTimerQuest:CancelQuest(self.delay_timer)
- self.delay_timer = nil
- end
- end
-
- function UITalkBoard:Load_callback()
- self.contentText = self:GetChild("Content"):GetComponent("Text")
- self.bg_image = self:GetChild("Image"):GetComponent("Image")
-
- self.bg_con = self:GetChild("Image")
- self.content_con = self:GetChild("Content")
-
- self:InitEvent()
- end
-
-
-
-
-
- function UITalkBoard:InitEvent()
-
- end
-
-
-
- function UITalkBoard:UpdatePos(x,y,z)
- SetLocalPosition(self.transform,x,y,z)
- end
-
- function UITalkBoard:SetContent(content,content_width)
- self.gameObject:SetActive(true)
- self.content = content
-
- self.contentText.text = content
- self.content_con.sizeDelta = Vector2(content_width,100)
- --20 是 距离上下左右的偏移,另外一个 20 是 下面那个尖尖的高度
- local width = math.min(self.contentText.preferredWidth,content_width)
- local height = self.contentText.preferredHeight
- self.bg_con.sizeDelta = Vector2(width + 20 ,height + 20 + 20)
- self.content_con.localPosition = Vector3(10,height + 20 + 20 - 10,0)
- end
-
- function UITalkBoard:StartTimer(time)
- if self.delay_timer == nil then
- local delay_callback = function()
- self:Show(false)
- self.delay_timer = nil
- end
- self.delay_timer = GlobalTimerQuest:AddDelayQuest(delay_callback, time)
- end
- end
-
-
- function UITalkBoard:Show(bool)
- self.gameObject:SetActive(bool)
- end
|