BaseAlert = BaseAlert or BaseClass(BaseView) function BaseAlert:__init(show_content, type, ok_callback, cancel_callback, ok_text, cancel_text, left_time,is_close_hide,consumable,content_align,ok_left,toggle_text,layer_name, bg_res, alert_title, close_callback, defalut_toggle, toggle_function,ok_btn_gray,cancel_btn_gray) self.layer_name = layer_name or "Top" self.hide_maincancas = false self.show_content = show_content self.type = type self.ok_callback = ok_callback self.cancel_callback = cancel_callback self.ok_text = ok_text self.cancel_text = cancel_text self.left_time = left_time self.is_close_hide = is_close_hide self.is_set_zdepth = true self.consumable = consumable self.content_align = content_align self.ok_left = ok_left self.toggle_text = toggle_text self.bg_res = bg_res -- 背景图资源 self.alert_title = alert_title -- 提示标题 self.close_callback = close_callback -- 关闭回调 self.defalut_toggle = defalut_toggle -- 勾选初始化状态 self.toggle_function = toggle_function -- 勾选回调 self.ok_btn_gray = ok_btn_gray -- 确定按钮是否变灰 self.cancel_btn_gray = cancel_btn_gray -- 取消按钮是否变灰 end function BaseAlert:SetBaseInfo() if self.is_close_hide then self.closeBtn:SetActive(false) end if self.left_time and self.left_time > 0 then local function onTimer() self.cancelText.text = (self.cancel_text or "取消") .. "(".. self.left_time ..")" if self.left_time > 1 then self.left_time = self.left_time - 1 else self:Close() end end self.left_time_timer_id = GlobalTimerQuest:AddPeriodQuest(onTimer, 1, -1) onTimer() end if self.content_align and self.contenText then self.contenText.alignment = self.content_align end end function BaseAlert:Close() if self.close_callback then self.close_callback() self.close_callback = nil end if self.left_time_timer_id then GlobalTimerQuest:CancelQuest(self.left_time_timer_id) self.left_time_timer_id = nil end BaseView.Close(self) end