From 081ea8d273048fd03756718ac6fb48a3c09218e9 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期二, 29 十月 2019 13:10:00 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into DEV_GXC

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/ListViewLayoutControls/VerticalListControl.cs |   22 +++++++++++++++++-----
 1 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/ListViewLayoutControls/VerticalListControl.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/ListViewLayoutControls/VerticalListControl.cs
index 3d529e1..4eb84cc 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/ListViewLayoutControls/VerticalListControl.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/ListViewLayoutControls/VerticalListControl.cs
@@ -19,6 +19,10 @@
         /// 鏈�澶ч珮搴�
         /// </summary>
         private int maxHeight = -1;
+        /// <summary>
+        /// 涓�涓病浠�涔堢敤鐨勪笢瑗�
+        /// </summary>
+        private FrameLayout frameBackTemp = null;
 
         #endregion
 
@@ -78,24 +82,32 @@
         /// <param name="addSpace">褰撶湡瀹為珮搴﹁秴杩囧師鏈夐珮搴︽椂,鏄惁娣诲姞绌虹櫧</param>
         public void AdjustRealHeight(int bottomSpace, bool addSpace = true)
         {
-            if (this.ChildrenCount == 0)
+            int count = frameBackTemp == null ? this.ChildrenCount : this.ChildrenCount - 1;
+            if (count <= 0)
             {
+                frameBackTemp?.RemoveFromParent();
+                frameBackTemp = null;
                 //杩樺師涓烘渶澶ч珮搴�
                 this.Height = maxHeight;
                 return;
             }
+
             //璋冩暣鍒楄〃鎺т欢鐨勯珮搴�
-            var realHeight = this.ChildrenCount * this.GetChildren(0).Height + bottomSpace;
+            var realHeight = count * this.GetChildren(0).Height + bottomSpace;
             if (realHeight < this.Height)
             {
+                frameBackTemp?.RemoveFromParent();
+                frameBackTemp = null;
                 //缂╁皬鎺т欢楂樺害
                 this.Height = realHeight;
             }
             else if (addSpace == true && bottomSpace > 0 && realHeight > this.maxHeight)
             {
-                var frameBack = new FrameLayout();
-                frameBack.Height = bottomSpace;
-                this.AddChidren(frameBack);
+                frameBackTemp?.RemoveFromParent();
+
+                frameBackTemp = new FrameLayout();
+                frameBackTemp.Height = bottomSpace;
+                this.AddChidren(frameBackTemp);
             }
         }
 

--
Gitblit v1.8.0