From a4924de3136289d10cabbf2f61a228387d44ded7 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期四, 07 十一月 2019 13:48:36 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into DEV_GXC
---
ZigbeeApp/Shared/Phone/Device/Light/LightControl.cs | 37 ++++++++++++++++++++++++++++++-------
1 files changed, 30 insertions(+), 7 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/Device/Light/LightControl.cs b/ZigbeeApp/Shared/Phone/Device/Light/LightControl.cs
old mode 100755
new mode 100644
index 3e280d9..965a4d8
--- a/ZigbeeApp/Shared/Phone/Device/Light/LightControl.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Light/LightControl.cs
@@ -121,10 +121,10 @@
}
if (deviceUI.CommonDevice.Type == DeviceType.OnOffOutput)
{
- if ((common as ToggleLight).DeviceStatusReport.CluterID == 6)
+ if (common.DeviceStatusReport.CluterID == 6)
{
var light = deviceUI.CommonDevice as ToggleLight;
- light.DeviceStatusReport = (common as ToggleLight).DeviceStatusReport;
+ light.DeviceStatusReport = common.DeviceStatusReport;
//璁板綍銆佹洿鏂扮姸鎬�
if (light.DeviceStatusReport.AttriBute == null || light.DeviceStatusReport.AttriBute.Count == 0)
{
@@ -145,7 +145,30 @@
}
else if (typeTag == "OnlineStatusChange")
{
-
+ Application.RunOnMainThread(() =>
+ {
+ try
+ {
+ var deviceUI = device;
+ //璁惧涓虹┖
+ if (deviceUI.CommonDevice == null)
+ {
+ return;
+ }
+ //鏄惁涓哄綋鍓嶈澶�
+ if (deviceUI.CommonDevice.DeviceEpoint != common.DeviceEpoint || deviceUI.CommonDevice.DeviceAddr != common.DeviceAddr)
+ {
+ return;
+ }
+ deviceUI.CommonDevice.IsOnline = common.IsOnline;
+ deviceIMG.IsSelected = switchBtn.IsSelected = deviceUI.CommonDevice.IsOnline == 1;
+ deviceUI.CommonDevice.LastDateTime = DateTime.Now;
+ }
+ catch (Exception ex)
+ {
+ System.Console.WriteLine($"Error:{ex.Message}");
+ }
+ });
}
}
#endregion
@@ -157,8 +180,8 @@
public override void RemoveFromParent()
{
ZbGateway.StatusList.Remove(this);
- action();
- action = null;
+ //action();
+ //action = null;
RemoveUpdateControlDeviceStatuAction();
base.RemoveFromParent();
}
@@ -475,12 +498,12 @@
//collection
if ((sender as Button).IsSelected)
{
- Shared.Common.Room.GetLoveRoom().DeleteDevice(device.FileName);
+ Shared.Common.Room.CurrentRoom.GetLoveRoom().DeleteDevice(device.FileName);
(sender as Button).IsSelected = false;
}
else
{
- Shared.Common.Room.GetLoveRoom().AddDevice(device.FileName);
+ Shared.Common.Room.CurrentRoom.GetLoveRoom().AddDevice(device.FileName);
(sender as Button).IsSelected = true;
}
}
--
Gitblit v1.8.0