static IEnumerator AutoCloseDelayTime(float time, AutoCloseCallBack callback = null, object[] args = null) { yield return(new WaitForSeconds(time)); if (callback != null) { callback(args); } Instance.Close(); }
/// <summary> /// 支持自动关闭及其回调 /// </summary> /// <param name="title"></param> /// <param name="message"></param> /// <param name="callback"></param> /// <param name="args"></param> /// <param name="time"></param> /// <param name="mode"></param> public static void Open(string title, string message, string lb_sure = null, string lb_ok = null, string lb_cancel = null, AutoCloseCallBack callback = null, object[] args = null, float time = 2f, Mode mode = Mode.None) { message = message.Replace('^', '\n'); Instance.m_title = title; Instance.m_text = message; Instance.mode = mode; Instance.Open(); Instance.m_sure = string.IsNullOrEmpty(lb_sure) ? "确定" : lb_sure; Instance.m_ok = string.IsNullOrEmpty(lb_sure) ? "忽略" : lb_ok; Instance.m_cancel = string.IsNullOrEmpty(lb_cancel) ? "取消" : lb_cancel; Util.StartCoroutine(AutoCloseDelayTime(time, callback, args)); }