mac
2023-10-12 0726154a7663e206e289e62f3f3fd7da4137a361
HDL_ON/UI/UI0-Public/PublicAssmebly.cs
@@ -476,6 +476,7 @@
        }
        static Dialog dialogTipMsgAutoClose;
        /// <summary>
        /// 信息提示窗口,自动关闭
@@ -484,14 +485,31 @@
        /// <param name="isWhite"></param>
        public void TipMsgAutoClose(string msg, bool isWhite, int closeTime = 1500)
        {
            Dialog dialog = new Dialog();
            if (dialogTipMsgAutoClose == null)
            {
                dialogTipMsgAutoClose = new Dialog();
            }
            else
            {
                try
                {
                    if (dialogTipMsgAutoClose != null)
                    {
                        dialogTipMsgAutoClose.Close();
                    }
                    dialogTipMsgAutoClose = null;
                }
                catch { }
                dialogTipMsgAutoClose = new Dialog();
            }
            FrameLayout dialogBody = new FrameLayout();
            dialog.AddChidren(dialogBody);
            dialogTipMsgAutoClose.AddChidren(dialogBody);
            dialogBody.MouseUpEventHandler = (sender, e) =>
            {
                dialog.Close();
                dialog = null;
                dialogTipMsgAutoClose.Close();
                dialogTipMsgAutoClose = null;
            };
            FrameLayout frame = new FrameLayout()
@@ -503,11 +521,11 @@
                BackgroundColor = isWhite ? 0xE6FFFFFF : CSS_Color.DialogTransparentColor1,
                Radius = (uint)Application.GetRealWidth(12),
            };
            dialog.AddChidren(frame);
            dialogTipMsgAutoClose.AddChidren(frame);
            frame.MouseUpEventHandler = (sender, e) =>
            {
                dialog.Close();
                dialog = null;
                dialogTipMsgAutoClose.Close();
                dialogTipMsgAutoClose = null;
            };
            Button btnTipIcon = new Button()
@@ -532,17 +550,22 @@
            };
            frame.AddChidren(btnTipMsg);
            dialog.Show();
            dialogTipMsgAutoClose.Show();
            new Thread(() =>
            {
                Thread.Sleep(closeTime);
                Application.RunOnMainThread(() =>
                {
                    if(dialog!=null)
                    try
                    {
                        dialog.Close();
                        if (dialogTipMsgAutoClose != null)
                        {
                            dialogTipMsgAutoClose.Close();
                        }
                        dialogTipMsgAutoClose = null;
                    }
                    catch { }
                });
            })
            { IsBackground = true }.Start();