From 9c16d3614d9b88c637f967518a329f239fcd3aaf Mon Sep 17 00:00:00 2001
From: lss <316519258@qq.com>
Date: 星期五, 12 六月 2020 09:22:04 +0800
Subject: [PATCH] 2020.06.12

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/ProgressFormBar.cs |  138 ++++++++++++++++-----------------------------
 1 files changed, 50 insertions(+), 88 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/ProgressFormBar.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/ProgressFormBar.cs
index 4d6dd4c..3349ea3 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/ProgressFormBar.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/ProgressFormBar.cs
@@ -29,7 +29,14 @@
                 return m_Current;
             }
         }
-
+        /// <summary>
+        /// 娑堟伅鎺т欢鍗曞嚮鐨勪簨浠�
+        /// </summary>
+        public Action MsgClickEvent = null;
+        /// <summary>
+        /// 鐣岄潰鍏抽棴鐨勪簨浠�
+        /// </summary>
+        public Action CloseEvent = null;
         /// <summary>
         /// 瀹瑰櫒鎺т欢
         /// </summary>
@@ -39,25 +46,17 @@
         /// </summary>
         private NormalViewControl btnText = null;
         /// <summary>
-        /// 杩涘害鍊兼枃鏈殑鏄剧ず鎺т欢
+        /// 杩涘害鏉℃帶浠�
         /// </summary>
-        private NormalViewControl btnProgressView = null;
-        /// <summary>
-        /// 杩涘害鍊艰兘澶熺Щ鍔ㄧ殑閭d釜妗嗘帶浠�
-        /// </summary>
-        private FrameLayout frameProgress = null;
-        /// <summary>
-        /// 杩涘害鏉�
-        /// </summary>
-        private FrameLayout btnProgressBar = null;
-        /// <summary>
-        /// 杩涘害鏉″鍣ㄧ殑鏈�澶у搴�
-        /// </summary>
-        private int ProRowWidth = 0;
+        private ProgressRowBar btnProgressBar = null;
         /// <summary>
         /// 鍘熸潵鐨勬粦鍔ㄦ爣璇�
         /// </summary>
         private bool oldScrollEnabled = false;
+        /// <summary>
+        /// 鍘熸潵鐨勯偅涓渾褰㈣繘搴︽潯鏄惁鍙
+        /// </summary>
+        private bool oldPrigressVisible = false;
 
         #endregion
 
@@ -68,23 +67,21 @@
         /// </summary>
         private void InitProgressFormBar()
         {
-            var nowForm = UserView.HomePage.Instance.GetChildren(UserView.HomePage.Instance.ChildrenCount - 1);
-            if (nowForm == null || (nowForm is ViewGroup) == false)
-            {
-                //杩欑鎯呭喌搴旇涓嶅瓨鍦�
-                var alert = new ShowMsgControl(ShowMsgType.Error, "ERROR:Not Found The ActionForm!");
-                alert.Show();
-                return;
-            }
             //瀹夊崜鍙互鐐瑰嚮绯荤粺鐨勮繑鍥為敭
             this.oldScrollEnabled = UserView.HomePage.Instance.ScrollEnabled;
             UserView.HomePage.Instance.ScrollEnabled = false;
             Shared.Common.CommonPage.BackKeyCanClick = false;
 
+            this.oldPrigressVisible = Common.CommonPage.Loading.Visible;
+            if (oldPrigressVisible == true)
+            {
+                //鍦嗗舰杩涘害鏉′复鏃跺叧闂�
+                Common.CommonPage.Loading.Hide();
+            }
             //瀹瑰櫒
             bodyFrameLayout = new FrameLayout();
             bodyFrameLayout.BackgroundColor = UserCenterColor.Current.DialogBackColor;
-            ((ViewGroup)nowForm).AddChidren(bodyFrameLayout);
+            Common.CommonPage.Instance.AddChidren(bodyFrameLayout);
 
             var frameBack = new FrameLayout();
             frameBack.Width = Application.GetRealWidth(674);
@@ -92,7 +89,7 @@
             frameBack.BackgroundColor = UserCenterColor.Current.White;
             frameBack.Gravity = Gravity.CenterHorizontal;
             frameBack.Y = Application.GetRealHeight(683);
-            frameBack.Radius = 6;
+            frameBack.Radius = (uint)Application.GetRealHeight(17);
             bodyFrameLayout.AddChidren(frameBack);
 
             //杩涘害鏄剧ず鏂囨湰
@@ -101,41 +98,17 @@
             btnText.TextColor = UserCenterColor.Current.TextGrayColor1;
             btnText.TextAlignment = TextAlignment.Center;
             frameBack.AddChidren(btnText);
+            btnText.ButtonClickEvent += (sender, e) =>
+            {
+                this.MsgClickEvent?.Invoke();
+            };
 
             //杩涘害鏉�
-            var btnProRow = new FrameLayout();
-            btnProRow.Gravity = Gravity.CenterHorizontal;
-            btnProRow.Y = Application.GetRealHeight(161);
-            btnProRow.Width = Application.GetRealWidth(559);
-            btnProRow.Height = Application.GetRealHeight(29);
-            btnProRow.BackgroundColor = 0xfff5f5f5;
-            btnProRow.Radius = (uint)Application.GetRealHeight(29) / 2;
-            frameBack.AddChidren(btnProRow);
-            this.btnProgressBar = new FrameLayout();
-            btnProgressBar.Width = 0;
-            btnProgressBar.Height = btnProRow.Height;
-            btnProgressBar.Radius = btnProRow.Radius;
-            btnProgressBar.BackgroundColor = 0xfffb744a;
-            btnProgressBar.Radius = (uint)Application.GetRealHeight(29) / 2;
-            btnProRow.AddChidren(btnProgressBar);
-
-            //杩涘害鍊兼枃鏈�
-            this.frameProgress = new FrameLayout();
-            frameProgress.Width = Application.GetRealWidth(84);
-            frameProgress.Height = Application.GetRealHeight(60);
-            frameProgress.Y = Application.GetRealHeight(86);
-            frameBack.AddChidren(frameProgress);
-            frameProgress.X = btnProRow.X + btnProgressBar.Right - frameProgress.Width / 2;
-            var btnProgressPic = new PicViewControl(84, 60);
-            btnProgressPic.UnSelectedImagePath = "Item/ProgressMsg.png";
-            frameProgress.AddChidren(btnProgressPic);
-            this.btnProgressView = new NormalViewControl(84, 32, true);
-            btnProgressView.TextSize = 10;
-            btnProgressView.TextAlignment = TextAlignment.Center;
-            btnProgressView.Text = "0%";
-            frameProgress.AddChidren(btnProgressView);
-
-            this.ProRowWidth = btnProRow.Width;
+            this.btnProgressBar = new ProgressRowBar(559, 29);
+            btnProgressBar.Gravity = Gravity.CenterHorizontal;
+            btnProgressBar.Y = Application.GetRealHeight(161);
+            frameBack.AddChidren(btnProgressBar);
+            btnProgressBar.StartMode1(true);
         }
 
         #endregion
@@ -164,7 +137,7 @@
         /// <param name="value">姝ゅ�间负鐧惧垎姣斿��(涔熷氨鏄皬浜庢垨鑰呯瓑浜�1鐨�)</param>
         public void SetValue(decimal value)
         {
-            this.SetValueEx(value);
+            this.btnProgressBar.SetValue(value);
         }
 
         /// <summary>
@@ -172,27 +145,9 @@
         /// </summary>
         /// <param name="value">杩涘害鍊�,鍐呴儴浼氶櫎浠axValue</param>
         /// <param name="maxValue">鏈�澶у��</param>
-        public void SetValue2(decimal value, decimal maxValue)
+        public void SetValue(decimal value, decimal maxValue)
         {
-            decimal result = value / maxValue;
-            this.SetValueEx(result);
-        }
-
-        /// <summary>
-        /// 璁剧疆杩涘害鍊�
-        /// </summary>
-        /// <param name="value"></param>
-        private void SetValueEx(decimal value)
-        {
-            HdlThreadLogic.Current.RunMain(() =>
-            {
-                int width = (int)(value * ProRowWidth);
-                btnProgressBar.Width = width;
-                //鏂囨湰鏄剧ず
-                btnProgressView.Text = ((int)(value * 100)) + "%";
-                //鏂囨湰鏄剧ず鐨勯偅涓浘鐗囨绉诲姩
-                frameProgress.X = ControlCommonResourse.XXLeft + btnProgressBar.Right - frameProgress.Width / 2;
-            });
+            this.btnProgressBar.SetValue(value, maxValue);
         }
 
         #endregion
@@ -223,21 +178,28 @@
         /// </summary>
         public void Close()
         {
-            if (this.oldScrollEnabled == true)
-            {
-                //濡傛灉瀹冨師鏉ュ氨鏄笉鍙互婊戝姩鐨勮瘽锛屼笉澶勭悊
-                UserView.HomePage.Instance.ScrollEnabled = true;
-            }
-            Shared.Common.CommonPage.BackKeyCanClick = true;
-
             HdlThreadLogic.Current.RunMain(() =>
             {
+                if (this.oldScrollEnabled == true)
+                {
+                    //濡傛灉瀹冨師鏉ュ氨鏄笉鍙互婊戝姩鐨勮瘽锛屼笉澶勭悊
+                    UserView.HomePage.Instance.ScrollEnabled = true;
+                }
+                Shared.Common.CommonPage.BackKeyCanClick = true;
+                if (this.oldPrigressVisible == true)
+                {
+                    //濡傛灉鍘熸潵鐨勮繘搴︽潯鏄彲瑙佺殑璇�,杩樺師鍥炲幓
+                    Common.CommonPage.Loading.Start(Common.CommonPage.Loading.Text);
+                }
+
                 bodyFrameLayout?.RemoveFromParent();
                 bodyFrameLayout = null;
                 btnText = null;
-                btnProgressView = null;
-                frameProgress = null;
                 btnProgressBar = null;
+                this.MsgClickEvent = null;
+                //鍏抽棴浜嬩欢
+                this.CloseEvent?.Invoke();
+                this.CloseEvent = null;
             });
         }
 

--
Gitblit v1.8.0