From 0726154a7663e206e289e62f3f3fd7da4137a361 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 12 十月 2023 13:51:36 +0800
Subject: [PATCH] Merge branch 'Dev-Branch' into wjc

---
 HDL_ON/UI/UI0-Public/PublicAssmebly.cs |   43 +++++++++++++++++++++++++++++++++----------
 1 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs
index 496c9ab..512a64e 100644
--- a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs
+++ b/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();

--
Gitblit v1.8.0