From cf0bffdf072bae11bdb8c780d0a355818700f713 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期一, 18 五月 2020 15:42:45 +0800 Subject: [PATCH] 请合并代码,优化面板问题 --- ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs | 148 ++++++++++++++++++++++++++----------------------- 1 files changed, 79 insertions(+), 69 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs old mode 100755 new mode 100644 index 3cf0c4f..19c5766 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs @@ -36,7 +36,11 @@ /// <summary> /// 鎸夐敭閰嶇疆鐨勭洰鏍囧垪琛� /// </summary> - List<CommonDevice> targetList = new List<CommonDevice>(); + List<CommonDevice> targetListDevice = new List<CommonDevice>(); + /// <summary> + /// 鎸夐敭閰嶇疆鐨勫満鏅洰鏍囧垪琛� + /// </summary> + List<SceneUI> targetListScene = new List<SceneUI>(); /// <summary> /// 鏈湴鎴块棿鍒楄〃 /// </summary> @@ -224,7 +228,7 @@ var sc = currentKey.bindList.Find(obj => (obj != null) && (obj.BindScenesId == scTemp.Id)); if (sc != null) { - targetList.Add(scTemp); + targetListScene.Add(scTemp); } } } @@ -244,7 +248,7 @@ btnFinifh.Enable = true; btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; } - if (targetList.Count == 0) + if (targetListDevice.Count == 0 && targetListScene.Count == 0) { btnFinifh.Enable = false; btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect; @@ -259,7 +263,7 @@ bool isFinish = false; try { - if (targetList.Count == 0) + if (targetListDevice.Count == 0 && targetListScene.Count == 0) { Application.RunOnMainThread(() => { @@ -348,7 +352,7 @@ var addBindeDev = new AddBindData(); addBindeDev.DeviceAddr = currentKey.DeviceAddr; addBindeDev.Epoint = currentKey.DeviceEpoint; - foreach (var de in targetList) + foreach (var de in targetListDevice) { if (de.DeviceAddr != null) { @@ -359,15 +363,14 @@ addBindInfo.BindEpoint = de.DeviceEpoint; addBindeDev.BindList.Add(addBindInfo); } - else - { - var addBindInfo = new AddBindListObj(); - addBindInfo.BindType = 1; - addBindInfo.BindCluster = 6; - var sc1 = (SceneUI)de; - addBindInfo.BindScenesId = sc1.Id; - addBindeDev.BindList.Add(addBindInfo); - } + } + foreach (var de in targetListScene) + { + var addBindInfo = new AddBindListObj(); + addBindInfo.BindType = 1; + addBindInfo.BindCluster = 6; + addBindInfo.BindScenesId = de.Id; + addBindeDev.BindList.Add(addBindInfo); } var dev = new AddedDeviceBindResponseAllData(); @@ -377,7 +380,8 @@ if (dev.addedDeviceBindResponseData.Result == 0) { currentKey.bindList = dev.addedDeviceBindResponseData.BindList; - targetList.Clear(); + targetListDevice.Clear(); + targetListScene.Clear(); isFinish = true; if (isFinish) { @@ -486,11 +490,11 @@ { roomTempList.Add(room); } - if (roomTempList.Count != 0) - { - curRoom = roomTempList[0]; - } - + } + for (int i = 0; i < roomTempList.Count; i++) + { + var room = roomTempList[i]; + curRoom = roomTempList[0]; var btnRoomFrameLayout = new FrameLayout { Height = Application.GetMinReal(159), @@ -523,6 +527,20 @@ curentOldRoom = btnRoom; curentOldRoomFrameLayout = btnRoomFrameLayout; } + + if (index == roomTempList.Count - 1 && index > 3) + { + var btnRoomFrameLayoutEmpty = new FrameLayout + { + Height = Application.GetMinReal(159), + Width = Application.GetMinReal(50), + Y = Application.GetRealHeight(23), + X = Application.GetRealWidth(5), + BorderWidth = 1, + }; + btnHorizontalScrolViewLayout.AddChidren(btnRoomFrameLayoutEmpty); + } + EventHandler<MouseEventArgs> eHandlerRoom = (sender, e) => { if (!btnRoom.IsSelected) @@ -547,7 +565,6 @@ curentOldRoomFrameLayout.BackgroundImagePath = "Item/RoomIconBackgroundSelected.png"; } curRoom = room; - currentKey.RoomId = room.Id; if (curRoom.ListSceneId.Count == 0) { btnFinifh.Enable = false; @@ -558,7 +575,7 @@ btnFinifh.Enable = true; btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; } - if (targetList.Count == 0) + if (targetListDevice.Count == 0 && targetListScene.Count == 0) { btnFinifh.Enable = false; btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect; @@ -665,7 +682,7 @@ { btnBindName.Text = scene.Name; } - if (targetList.Count == 0) + if (targetListDevice.Count == 0 && targetListScene.Count == 0) { foreach (var bindedSc in currentKey.bindList) { @@ -674,16 +691,15 @@ btnChoose.IsSelected = true; btnChoose.Visible = true; oldScene = btnChoose; - targetList.Add(scene); + targetListScene.Add(scene); } } } else { - foreach (var bindedSc in targetList) + foreach (var bindedSc in targetListScene) { - var sc1 = (SceneUI)bindedSc; - if (scene.Id == sc1.Id) + if (scene.Id == bindedSc.Id) { btnChoose.IsSelected = true; btnChoose.Visible = true; @@ -692,55 +708,49 @@ } } - bool IsTip = false; EventHandler<MouseEventArgs> hander = (sender, e) => - { - if (currentKey.bindList.Count != 0) - { - if (IsTip) - { - return; - } - IsTip = true; - if (btnChoose.IsSelected) - { - new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindExist), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnBindName); - return; - } - } + { + if (currentKey.bindList.Count != 0) + { + if (btnChoose.IsSelected) + { + new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindExist), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnBindName); + return; + } + } - if (!btnChoose.IsSelected) - { - if (oldScene != null) - { - oldScene.IsSelected = false; - oldScene.Visible = false; - } - oldScene = btnChoose; - oldScene.IsSelected = true; - oldScene.Visible = true; - currentKey.curSelectSceneID = scene.Id.ToString(); - targetList.Clear(); - targetList.Add(scene); - } - if (targetList.Count == 0) - { - btnFinifh.Enable = false; - btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect; - } - else - { - btnFinifh.Enable = true; - btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; - } - }; + if (!btnChoose.IsSelected) + { + if (oldScene != null) + { + oldScene.IsSelected = false; + oldScene.Visible = false; + } + oldScene = btnChoose; + oldScene.IsSelected = true; + oldScene.Visible = true; + targetListDevice.Clear(); + targetListScene.Clear(); + targetListScene.Add(scene); + } + if (targetListDevice.Count == 0 && targetListScene.Count == 0) + { + btnFinifh.Enable = false; + btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect; + } + else + { + btnFinifh.Enable = true; + btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack; + } + }; rowLayout.MouseUpEventHandler += hander; devicePic.MouseUpEventHandler += hander; btnBindName.MouseUpEventHandler += hander; btnChoose.MouseUpEventHandler += hander; curIndex++; } - if (targetList.Count == 0) + if (targetListDevice.Count == 0 && targetListScene.Count == 0) { btnFinifh.Enable = false; btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect; @@ -893,7 +903,7 @@ int index = 0; RefreshRoomList(curRoom, ref index); RefreshSceneList(roomList[0]); - if (targetList.Count == 0) + if (targetListDevice.Count == 0 && targetListScene.Count == 0) { btnFinifh.Enable = false; btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect; -- Gitblit v1.8.0