From f9f9b0030fdd2691632569b7dcad9d0ddca5e4cf Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期三, 23 十二月 2020 09:28:54 +0800
Subject: [PATCH] 2020-12-23 1.调整mqtt挤下线,跑ui线程。2.LoadEvent_CheckLinkStatus方法调整
---
HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs | 153 ++++++++++++++++++++++++++++++++-------------------
1 files changed, 96 insertions(+), 57 deletions(-)
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs
index 6645647..7f604b2 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs
@@ -85,7 +85,7 @@
}
if (view3.Tag == null || view3.Tag.ToString() != functionCategory + "_View")
{
- MainPage.Log($"i={i}:j={j}:k={k} view3 tag : {view3.Tag.ToString()}");
+ //MainPage.Log($"i={i}:j={j}:k={k} view3 tag : {view3.Tag.ToString()}");
continue;
}
for (var o = 0; o < view3.ChildrenCount; o++)
@@ -332,62 +332,77 @@
/// <summary>
/// 鍏抽棴鎵撳紑鍏ㄩ儴閫変腑绫诲瀷鍔熻兘
/// </summary>
- void LoadEvent_SwitchFunction(Button btn, ShowFunction functionCategory)
+ void LoadEvent_SwitchFunction(Button btn, ShowFunction functionCategory,FrameLayout view)
{
btn.MouseUpEventHandler = (sender, e) => {
btn.IsSelected = !btn.IsSelected;
var onoff = btn.IsSelected ? "on" : "off";
- switch (functionCategory)
+ var waitPage = new Loading();
+ view.AddChidren(waitPage);
+ waitPage.BackgroundColor = 0x00000000;
+ waitPage.Start("");
+ new System.Threading.Thread(() =>
{
- case ShowFunction.AC:
- foreach (var f in FunctionList.List.aCs)
+ try
+ {
+ switch (functionCategory)
{
- f.trait_on_off.curValue = onoff;
- //Control.Send(CommandType_A.write, f);
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
+ case ShowFunction.AC:
+ foreach (var f in FunctionList.List.aCs)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ case ShowFunction.FloorHeating:
+ foreach (var f in FunctionList.List.floorHeatings)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ case ShowFunction.Light:
+ foreach (var f in FunctionList.List.lights)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ case ShowFunction.Electric:
+ foreach (var f in FunctionList.List.electricals)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
}
- break;
- case ShowFunction.FloorHeating:
- foreach (var f in FunctionList.List.floorHeatings)
+ }
+ catch (Exception ex)
+ {
+ MainPage.Log($"{functionCategory}鍏ㄥ紑鍏ㄥ叧澶辫触:{ex.Message}");
+ }
+ finally
+ {
+ Application.RunOnMainThread(() =>
{
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- }
- break;
- case ShowFunction.Curtain:
- //foreach (var f in FunctionList.List.curtains)
- //{
- // f.trait_on_off.value = onoff;
- // //Control.Send(CommandType_A.write, f);
- // Dictionary<string, string> d = new Dictionary<string, string>();
- // d.Add("percent", "100");
- // Control.SendWriteCommand(f, d);
- //}
- break;
- case ShowFunction.Light:
- foreach (var f in FunctionList.List.lights)
- {
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- }
- break;
- case ShowFunction.Electric:
- foreach (var f in FunctionList.List.electricals)
- {
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- }
- break;
- }
-
+ waitPage.Hide();
+ waitPage.RemoveFromParent();
+ });
+ }
+ })
+ { IsBackground = true, Priority = System.Threading.ThreadPriority.AboveNormal }.Start();
};
}
@@ -395,21 +410,45 @@
/// <summary>
/// 绐楀笜鍏ㄥ紑鍏ㄥ叧
/// </summary>
- void LoadEvent_CurtainSwitch(Button btnClose, Button btnOpen)
+ void LoadEvent_CurtainSwitch(Button btnClose, Button btnOpen,FrameLayout view)
{
btnOpen.MouseUpEventHandler = (sender, e) =>
{
DB_ResidenceData.Instance.GlobalCurtainStatus = true;
btnOpen.IsSelected = true;
btnClose.IsSelected = false;
- foreach (var f in FunctionList.List.curtains)
+ var waitPage = new Loading();
+ waitPage.BackgroundColor = 0x00000000;
+ view.AddChidren(waitPage);
+ waitPage.Start("");
+ new System.Threading.Thread(() =>
{
- f.trait_on_off.curValue = "on";
- f.percent = 100;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add("on_off", f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- }
+ try
+ {
+ foreach (var f in FunctionList.List.curtains)
+ {
+ f.trait_on_off.curValue = "on";
+ f.percent = 100;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("on_off", f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ }
+ catch (Exception ex)
+ {
+ MainPage.Log($"绐楀笜鍏ㄥ紑鍏ㄥ叧澶辫触:{ex.Message}");
+ }
+ finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ waitPage.Hide();
+ waitPage.RemoveFromParent();
+ });
+ }
+ })
+ { IsBackground = true, Priority = System.Threading.ThreadPriority.AboveNormal }.Start();
};
btnClose.MouseUpEventHandler = (sender, e) =>
--
Gitblit v1.8.0