From 94e4e5b9fd3da964c44b7b14227d6fe2bbb426d7 Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 02 四月 2020 13:56:39 +0800 Subject: [PATCH] 2020-04-02-2 --- ZigbeeApp/Shared/Phone/Device/Room/RoomHumiditySetting.cs | 94 +++++++++++++++++++++++++++++++++++++++------- 1 files changed, 79 insertions(+), 15 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Room/RoomHumiditySetting.cs b/ZigbeeApp/Shared/Phone/Device/Room/RoomHumiditySetting.cs index 0dcac8e..89fc274 100755 --- a/ZigbeeApp/Shared/Phone/Device/Room/RoomHumiditySetting.cs +++ b/ZigbeeApp/Shared/Phone/Device/Room/RoomHumiditySetting.cs @@ -1,6 +1,8 @@ 锘縰sing System; +using System.Collections.Generic; using Shared.Common; using Shared.Phone.Device.CommonForm; +using ZigBee.Device; namespace Shared.Phone.Device.Room { @@ -22,7 +24,16 @@ /// <summary> /// The action. /// </summary> - public Action<string> action; + public Action<CommonDevice> selectDeviceAction; + + /// <summary> + /// tempDeviceRow + /// </summary> + private DeviceInfoWithZoneRow tempDeviceRow = null; + /// <summary> + /// tempDevice + /// </summary> + public CommonDevice tempDevice; #endregion @@ -80,31 +91,84 @@ }; bodyFrameLayout.AddChidren(verticalScrolView); - var confirm = new Device.CommonForm.CompleteButton(1700, 700, 127); + var confirm = new Device.CommonForm.CompleteButton(1700, 900, 127); confirm.SetTitle(R.MyInternationalizationString.Save); AddChidren(confirm); - - for (int i = 0; i < 15; i++) + confirm.MouseUpEventHandler += (sender, e) => { - AddItem(verticalScrolView, 20 + i * (127 + 20)); + RemoveFromParent(); + if (tempDevice != null) + { + selectDeviceAction?.Invoke(tempDevice); + } + }; + + var deviceList = GetHumidityDevice(); + + for (int i = 0; i < deviceList.Count; i++) + { + var fl = new FrameLayout + { + Height = Application.GetRealHeight(127 + 20), + BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor + }; + verticalScrolView.AddChidren(fl); + + var device = deviceList[i]; + var devRow = new DeviceInfoWithZoneRow(20); + fl.AddChidren(devRow); + devRow.Init(); + devRow.SetIcon(device.IconPath); + devRow.SetName(Common.LocalDevice.Current.GetDeviceEpointName(device)); + devRow.SetZone(UserCenter.HdlRoomLogic.Current.GetRoomNameByDevice(device)); + if (i == deviceList.Count - 1) + { + devRow.HideLine(true); + } + + if (tempDevice != null && tempDevice == device) + { + tempDeviceRow = devRow; + tempDevice = device; + devRow.SetStatu(true); + } + else + { + if (i == 0 && tempDevice == null) + { + tempDeviceRow = devRow; + tempDevice = device; + devRow.SetStatu(true); + } + } + + devRow.ClickButton.MouseUpEventHandler += (sender, e) => + { + tempDeviceRow.SetStatu(false); + devRow.SetStatu(true); + tempDeviceRow = devRow; + tempDevice = device; + }; } } /// <summary> - /// AddItem + /// 婀垮害浼犳劅鍣ㄥ垪琛� /// </summary> - /// <param name="vertical"></param> - public void AddItem(VerticalScrolViewLayout vertical, int y) + private List<ZigBee.Device.CommonDevice> GetHumidityDevice() { - var dev = new DeviceInfoWithZoneRow(y); - vertical.AddChidren(dev); - dev.Init(); - dev.SetIcon("DeviceIcon/1.png"); - dev.SetName("婀垮害浼犳劅鍣�" + y); - dev.SetZone(room.FloorName + ", " + room.Name); + var listDevice = new List<ZigBee.Device.CommonDevice>(); + foreach (var device in Common.LocalDevice.Current.listAllDevice) + { + //鑾峰彇婀垮害浼犳劅鍣� + if (device is ZigBee.Device.TemperatureSensor && ((ZigBee.Device.TemperatureSensor)device).SensorDiv == 2) + { + listDevice.Add(device); + } + } + return listDevice; } - #endregion } } -- Gitblit v1.8.0