From eed381ca472abb06e386281e604569ebf80bbfe3 Mon Sep 17 00:00:00 2001
From: WJC <wjc@hdlchina.com.cn>
Date: 星期四, 26 三月 2020 17:51:41 +0800
Subject: [PATCH] 2020-03-26

---
 ZigbeeApp/Shared/Phone/Device/Logic/MemberList.cs |  322 ++++++++++++++---------------------------------------
 1 files changed, 87 insertions(+), 235 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/MemberList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/MemberList.cs
index 44f682c..1ffb2b7 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/MemberList.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/MemberList.cs
@@ -22,66 +22,23 @@
         {
             common = commondevice;
             editdeviceConditionsInfo = editdeviceConditions;
+
+            #region  鐣岄潰甯冨眬浠g爜 
             UserView.HomePage.Instance.ScrollEnabled = false;
             this.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor;
-            #region  鏈�涓婇潰鐨勫竷灞�浠g爜
-            var topRowLayout = new RowLayout
-            {
-                BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor,
-                Height = Application.GetRealHeight(184),
-                LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor,
-            };
-            this.AddChidren(topRowLayout);
-
-            var titleName = new Button
-            {
-                TextSize = 17,
-                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                TextAlignment = TextAlignment.CenterLeft,
-                X = Application.GetRealWidth(176),
-                Width = Application.GetRealWidth(600),
-                Height = Application.GetRealHeight(69),
-                Y = Application.GetRealHeight(92),
-                TextID = MyInternationalizationString.userlist,
-                IsBold = true,
-            };
-            topRowLayout.AddChidren(titleName);
-
-            var clickBtn = new Button
-            {
-                Width = Application.GetRealWidth(81 + 51),
-                Height = Application.GetRealHeight(58 + 40),
-                Y = Application.GetRealHeight(98 - 40),
-            };
-            topRowLayout.AddChidren(clickBtn);
-            clickBtn.MouseDownEventHandler += (sender, e) =>
-            {
-                RemoveFromParent();
-            };
-
-            var back = new Button
-            {
-                Width = Application.GetRealWidth(30),
-                Height = Application.GetRealHeight(51),
-                X = Application.GetRealWidth(81),
-                Y = Application.GetRealHeight(98),
-                //Gravity = Gravity.CenterVertical;
-                UnSelectedImagePath = "ZigeeLogic/back.png",
-            };
-            topRowLayout.AddChidren(back);
-            back.MouseDownEventHandler += (sender, e) =>
-            {
-                RemoveFromParent();
-            };
-            #endregion
-
+            TopView view = new TopView();
+            this.AddChidren(view.TopRowView());
+            view.toptitleNameBtn.TextID = MyInternationalizationString.userlist;
+            view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); };
             middle = new VerticalRefreshLayout
             {
-                Y = topRowLayout.Bottom,
+                Y = view.topRowLayout.Bottom,
                 Height = Application.GetRealHeight(1920 - 184),
                 BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
             };
             this.AddChidren(middle);
+            #endregion
+
             middle.BeginHeaderRefreshingAction += () =>
             {
                 //閲嶆柊鍒锋柊logic鍒楄〃
@@ -149,222 +106,115 @@
         /// <param name="macport"></param>
         public void UserList(string macport)
         {
-            foreach (var user in Send.LockList)
+            for (int i=0;i<Send.LockList.Count;i++)
             {
+                var user = Send.LockList[i];
                 if (user.DoorLockMacPort != macport)
                 {
                     continue;
                 }
-                var userFramelayout = new FrameLayout
+
+                FunView userView = new FunView();
+                userView.iconBtn.Visible = false;
+                userView.funnameBtn.X = Application.GetRealWidth(81);
+                userView.funnameBtn.Text = user.UserName;
+                userView.funnextBtn.X = Application.GetRealWidth(1080 - 81 - 58);
+                userView.lineBtn.X = Application.GetRealWidth(81);
+                userView.lineBtn.Width = Application.GetRealWidth(1080 - 81 - 58);
+                if (Send.LockList.Count - 1 == i)
                 {
-                    Height = Application.GetRealHeight(160),
-                    BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
-                    // LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
-                };
-                middle.AddChidren(userFramelayout);
-
-
-                var userRow = new RowLayout
-                {
-                    Y = Application.GetRealHeight(30),
-                    Width = Application.GetRealWidth(1080 - 81 - 58),
-                    Height = Application.GetRealHeight(130),
-                    X = Application.GetRealWidth(81),
-                    LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
-                };
-                userFramelayout.AddChidren(userRow);
-
-                var userBtn = new Button
-                {
-                    Text = user.UserName,
-                    TextAlignment = TextAlignment.CenterLeft,
-                    TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                    TextSize = 14,
-                };
-                userRow.AddChidren(userBtn);
-
-                var userBack = new Button
-                {
-                    Width = Application.GetRealWidth(58),
-                    Height = Application.GetRealHeight(58),
-                    UnSelectedImagePath = "ZigeeLogic/next.png",
-                    X = Application.GetRealWidth(1080 - 81 - 58 - 58),
-                    Gravity = Gravity.CenterVertical,
-                };
-                userRow.AddChidren(userBack);
-
-                EventHandler<MouseEventArgs> useridclick = (sender, e) =>
-                {
-                    User(user);
-
-                };
-                userBtn.MouseUpEventHandler += useridclick;
-                userBack.MouseUpEventHandler += useridclick;
-                userFramelayout.MouseUpEventHandler += useridclick;
-                userRow.MouseUpEventHandler += useridclick;
+                    userView.funFrameLayout.Height = Application.GetRealHeight(160 + 20);//鏈�鍚庝竴琛屽鍔�20楂樺害;
+                    userView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor;
+                }
+                middle.AddChidren(userView.FunFrameView());
+                userView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                 {
+                     User(user);
+                 };
 
             }
 
 
-        }          
+        }
         /// <summary>
         /// 褰撳墠鎴愬憳淇℃伅鐨勬柟娉�
         /// </summary>
         /// <param name="user"></param>
         public void User(Send.MembershipIfon user)
         {
-            var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
-            this.AddChidren(flMain);
-            flMain.MouseUpEventHandler += (sender1, e1) =>
+          
+            //鍏冪礌瓒呭嚭9涓氨鐢ㄤ笂涓嬫粦鍔ㄦ帶浠�;
+            VerticalScrolViewLayout vV = null;
+            int count = user.UserIdMode.Count;
+            if (user.UserIdMode.Count > 9)
             {
-                flMain.RemoveFromParent();
-            };
-
-            var lockcolorfra = new FrameLayout
-            {
-                Width = Application.GetRealWidth(1080),
-                Height = Application.GetRealHeight(100),
-                Y = Application.GetRealHeight(1920 - 100),
-                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
-            };
-            flMain.AddChidren(lockcolorfra);
-
-            var lockcolorfra1 = new FrameLayout
-            {
-
-                Width = Application.GetRealWidth(1080),
-                Height = Application.GetRealHeight(530),
-                Y = Application.GetRealHeight(1920 - 530),
-                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
-                Radius = (uint)Application.GetRealHeight(60),
-            };
-            flMain.AddChidren(lockcolorfra1);
+                ///鍏冪礌瓒呭嚭9涓�;
+                count = 6;
+                //鍏冪礌瓒呭嚭9涓氨鐢ㄤ笂涓嬫粦鍔ㄦ帶浠�;
+                vV = new VerticalScrolViewLayout
+                {
+                    Y = Application.GetRealHeight(140 + 20),
+                    Height = Application.GetRealHeight(160 * count),
+                };
+                //娓呴櫎涔嬪墠鐨勬帶浠�;
+                vV.RemoveAll();
+            }
 
             #region  -------鍙栨秷   瀹屾垚
-            var lockRow = new RowLayout
+            var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicTranslucentColor };
+            this.AddChidren(flMain);
+            CompleteView completeView = new CompleteView();
+            flMain.AddChidren(completeView.Show(count));
+            completeView.Btntitle.Text = user.UserName;
+            EventHandler<MouseEventArgs> clickcancel = (sender, e) =>
             {
-                Height = Application.GetRealHeight(140),
-                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
-            };
-            lockcolorfra1.AddChidren(lockRow);
-            var Btncancel = new Button
-            {
-                TextID = MyInternationalizationString.cancel,
-                TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
-                Height = Application.GetRealHeight(140),
-                Width = Application.GetRealWidth(200),
-                X = Application.GetRealWidth(80),
-                TextAlignment = TextAlignment.CenterLeft,
-                TextSize = 14,
-            };
-            lockRow.AddChidren(Btncancel);
-            Btncancel.MouseUpEventHandler += (sender16, e16) =>
-            {
-                flMain.RemoveFromParent();
                 UserView.HomePage.Instance.ScrollEnabled = true;
+                flMain.RemoveFromParent();
             };
+            flMain.MouseUpEventHandler += clickcancel;
+            completeView.Btncancel.MouseUpEventHandler += clickcancel;
 
-            var Btntitle = new Button
-            {
-                TextID = MyInternationalizationString.security,
-                TextColor = ZigbeeColor.Current.LogicBtnTypeColor,
-                Height = Application.GetRealHeight(140),
-                Width = Application.GetRealWidth(320),
-                TextAlignment = TextAlignment.Center,
-                X = Btncancel.Right + Application.GetRealWidth(100),
-                TextSize = 16,
-                Text = user.UserName,
-            };
-            lockRow.AddChidren(Btntitle);
-            var Btncomplete = new Button
-            {
-                TextID = MyInternationalizationString.complete,
-                TextColor = ZigbeeColor.Current.LogicBtnCompleteColor,
-                Height = Application.GetRealHeight(140),
-                Width = Application.GetRealWidth(200),
-                TextAlignment = TextAlignment.CenterRight,
-                X = Btntitle.Right + Application.GetRealWidth(100),
-                TextSize = 14,
-
-            };
-            lockRow.AddChidren(Btncomplete);
             #endregion
             ///瀹氫袱涓彉閲忚褰曚箣鍓嶇殑鍙�硷紱
             string userId = "";
             string openMode = "";
-            string accountname = "";
+            string accountName = "";
             string SelectedDeviceStatuscondition = "";
-            lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * user.UserIdMode.Count) - 20 - 50);
-            lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * user.UserIdMode.Count) + 20 + 50);
-            if (user.UserIdMode.Count > 9)
-            {
-                ///鍏冪礌瓒呭嚭10涓紝鏆傛椂榛樿鏄剧ず10;
-                lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * 9) - 20 - 50);
-                lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * 9) + 20 + 50);
-            }
-         
             for (int i = 0; i < user.UserIdMode.Count; i++)
             {
                 var userifon = user.UserIdMode[i];
-                var doorlockfra = new FrameLayout
-                {
-                    Height = Application.GetRealHeight(160),
-                    Y = lockRow.Bottom + Application.GetRealHeight(20 + 160 * i),
-                };
-                lockcolorfra1.AddChidren(doorlockfra);
 
-                var doorlockRow = new RowLayout
+                mFunView lockView = new mFunView();
+                if (user.UserIdMode.Count > 9)
                 {
-                    Y = Application.GetRealHeight(30),
-                    Width = Application.GetRealWidth(920),
-                    Height = Application.GetRealHeight(130),
-                    X = Application.GetRealWidth(80),
-                    LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
-                };
-                doorlockfra.AddChidren(doorlockRow);
-
-                var doorlockBtn = new Button
+                    //鍏冪礌瓒呭嚭9涓氨鐢ㄤ笂涓嬫粦鍔ㄦ帶浠�;
+                    completeView.Show(count).AddChidren(vV);
+                    vV.AddChidren(lockView.Show());
+                }
+                else
                 {
-                    Width = Application.GetRealWidth(600),
-                    TextAlignment = TextAlignment.CenterLeft,
-                    TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
-                    Text = userifon.ModeName,
-                    TextSize = 14,
-                };
-                doorlockRow.AddChidren(doorlockBtn);
+                    lockView.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160 * i);
+                    completeView.Show(count).AddChidren(lockView.Show());
+                }
+                lockView.titleBtn.Text = userifon.ModeName;
 
-                var doorlockSelected = new Button
-                {
-                    X = Application.GetRealWidth(860),
-                    Width = Application.GetMinRealAverage(60),
-                    Height = Application.GetMinRealAverage(60),
-                    UnSelectedImagePath = "ZigeeLogic/selected.png",
-                    Visible = false,
-                    Gravity = Gravity.CenterVertical,
-
-                };
-                doorlockRow.AddChidren(doorlockSelected);
                 if ((user.UserIdMode.Count - 1) == i)
                 {
-                    doorlockRow.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
+                    lockView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
                 }
-                EventHandler<MouseEventArgs> doorlockclick = (sender2, e2) =>
-                {
-                    SelectedDeviceStatuscondition = "DoorLock";
-                    selectedIcon.Visible = false;
-                    selectedIcon = doorlockSelected;
-                    doorlockSelected.Visible = true;
-                    userId = userifon.UserId;
-                    openMode = userifon.OpenMode.ToString();
-                    accountname = Btntitle.Text + doorlockBtn.Text;
-                    //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
-                };
-                doorlockRow.MouseUpEventHandler += doorlockclick;
-                doorlockBtn.MouseUpEventHandler += doorlockclick;
-                doorlockSelected.MouseUpEventHandler += doorlockclick;
-                doorlockfra.MouseUpEventHandler += doorlockclick;
+                lockView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+                 {
+                     SelectedDeviceStatuscondition = "DoorLock";
+                     selectedIcon.Visible = false;
+                     selectedIcon = lockView.selectedIconBtn;
+                     lockView.selectedIconBtn.Visible = true;
+                     userId = userifon.UserId;
+                     openMode = userifon.OpenMode.ToString();
+                     accountName = completeView.Btntitle.Text + lockView.titleBtn.Text;
+                 };
 
-                if (string.IsNullOrEmpty(doorlockBtn.Text))
+
+                if (string.IsNullOrEmpty(lockView.titleBtn.Text))
                 {
                     string strname = "";
                     switch (userifon.OpenMode)
@@ -385,7 +235,7 @@
                             }
                             break;
                     }
-                    doorlockBtn.Text = userifon.UserId + strname;
+                    lockView.titleBtn.Text = userifon.UserId + strname;
                 }
 
                 if (edit && editdeviceConditionsInfo != null)
@@ -394,15 +244,17 @@
                     if (editdeviceConditionsInfo["AttriButeData2"] == userifon.UserId.ToString())
                     {
                         selectedIcon.Visible = false;
-                        selectedIcon = doorlockSelected;
-                        doorlockSelected.Visible = true;
+                        selectedIcon = lockView.selectedIconBtn;
+                        lockView.selectedIconBtn.Visible = true;
                     }
 
                 }
 
             }
-            Btncomplete.MouseUpEventHandler += (sender3, e3) =>
+    
+            completeView.Btncomplete.MouseUpEventHandler += (sender, e) =>
             {
+
                 string userIdstr = "", openModestr = "";
                 var deviceConditionsInfo = new Dictionary<string, string>();
                 var userdictionary = new Dictionary<string, string>();
@@ -416,7 +268,7 @@
                 deviceConditionsInfo.Add("AttriButeId", openMode);
                 deviceConditionsInfo.Add("AttriButeData2", userId);
                 userdictionary.Add("Account", Config.Instance.Guid);
-                userdictionary.Add("AccountName", accountname);
+                userdictionary.Add("AccountName", accountName);
                 userdictionary.Add("Type", "1");
                 userdictionary.Add("UserId", userId);
                 if (edit)
@@ -491,7 +343,7 @@
 
             };
 
-
         }
+        
     }
 }

--
Gitblit v1.8.0