require("game.common.BaseAlert") require("game.common.AlertTypeOne") require("game.common.AlertTypeTwo") require("game.common.AlertTypeThree") require("game.common.AlertTypeFour") require("game.common.AlertTypeFive") require("game.common.AlertTypeSix") require("game.common.AlertTypeSeven") require("game.common.AlertTypeaAward") require("game.common.AlertTypeItem") Alert = Alert or {} --每种类型分别实现 以免杂乱 Alert.Type = { One = "Alert.Type.ONE", Two = "Alert.Type.TWO", Three = "Alert.Type.THREE", Four = "Alert.Type.FOUR", Five = "Alert.Type.Five", Six = "Alert.Type.Six", Seven = "Alert.Type.Seven", CheckBox = "Alert.Type.CHECKBOX", Timer = "Alert.Type.TIMER", Award = "Alert.Type.Award", Item = "Alert.Type.Item", } Alert.curr_view = nil function Alert.show(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) if Alert.curr_view and Alert.curr_view:HasOpen() then Alert.curr_view:Close() Alert.curr_view = nil end local class_name = nil type = type or Alert.Type.One if type == Alert.Type.One then class_name = AlertTypeOne elseif type == Alert.Type.Two then class_name = AlertTypeTwo elseif type == Alert.Type.Three then class_name = AlertTypeThree elseif type == Alert.Type.Four then class_name = AlertTypeFour elseif type == Alert.Type.Five then class_name = AlertTypeFive elseif type == Alert.Type.Six then class_name = AlertTypeSix elseif type == Alert.Type.Seven then class_name = AlertTypeSeven elseif type == Alert.Type.Award then class_name = AlertTypeaAward elseif type == Alert.Type.Item then class_name = AlertTypeItem end if class_name then Alert.curr_view = class_name.New(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) Alert.curr_view:Open() end return Alert.curr_view end function Alert.showbytable(data) if Alert.curr_view and Alert.curr_view:HasOpen() then Alert.curr_view:Close() Alert.curr_view = nil end local class_name = nil local show_content = data.show_content or "" local type = data.type or Alert.Type.One if type == Alert.Type.One then class_name = AlertTypeOne elseif type == Alert.Type.Two then class_name = AlertTypeTwo elseif type == Alert.Type.Three then class_name = AlertTypeThree elseif type == Alert.Type.Four then class_name = AlertTypeFour elseif type == Alert.Type.Five then class_name = AlertTypeFive elseif type == Alert.Type.Six then class_name = AlertTypeSix elseif type == Alert.Type.Seven then class_name = AlertTypeSeven elseif type == Alert.Type.Award then class_name = AlertTypeaAward elseif type == Alert.Type.Item then class_name = AlertTypeItem end local ok_callback = data.ok_callback local cancel_callback = data.cancel_callback local ok_text = data.ok_text local cancel_text = data.cancel_text local left_time = data.left_time local is_close_hide = data.is_close_hide local consumable = data.consumable local content_align = data.content_align local ok_left = data.ok_left local toggle_text = data.toggle_text local bg_res = data.bg_res local alert_title = data.alert_title local close_callback = data.close_callback local toggle_function = data.toggle_function local ok_btn_gray = data.ok_btn_gray local cancel_btn_gray = data.cancel_btn_gray if class_name then Alert.curr_view = class_name.New(show_content,type, ok_callback, cancel_callback, ok_text, cancel_text, left_time,is_close_hide,consumable,content_align,ok_left,toggle_text,nil, bg_res, alert_title,close_callback,defalut_toggle, toggle_function,ok_btn_gray,cancel_btn_gray) Alert.curr_view:Open() end return Alert.curr_view end function Alert.close() if Alert.curr_view and Alert.curr_view:HasOpen() then Alert.curr_view:Close() Alert.curr_view = nil end end