From 301d3f15ba03ff942c029bd4c0b1ff544f7cfede Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 30 十二月 2020 11:19:48 +0800 Subject: [PATCH] 2020-12-30 1.解决RGB灯,色盘ColorPicker部分安卓手机,刷新图片时会变小问题 --- HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs | 194 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 138 insertions(+), 56 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs index 6645647..aa5e367 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,120 @@ /// <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 + { + if (DB_ResidenceData.Instance.GatewayType == 0 && !Control.Ins.IsRemote) { - 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); + switch (functionCategory) + { + 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) + else { - 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; - } + switch (functionCategory) + { + case ShowFunction.AC: + List<Function> acList = new List<Function>(); + foreach(var f in FunctionList.List.aCs) + { + acList.Add(f); + } + Control.Ins.SwtichFunctions(onoff == "on", acList); + break; + case ShowFunction.FloorHeating: + List<Function> fhList = new List<Function>(); + foreach (var f in FunctionList.List.floorHeatings) + { + fhList.Add(f); + } + Control.Ins.SwtichFunctions(onoff == "on", fhList); + break; + case ShowFunction.Light: + List<Function> lightList = new List<Function>(); + foreach (var f in FunctionList.List.lights) + { + lightList.Add(f); + } + Control.Ins.SwtichFunctions(onoff == "on", lightList); + break; + case ShowFunction.Electric: + List<Function> eleList = new List<Function>(); + foreach (var f in FunctionList.List.electricals) + { + eleList.Add(f); + } + Control.Ins.SwtichFunctions(onoff == "on", eleList); + break; + } + + } + } + catch (Exception ex) + { + MainPage.Log($"{functionCategory}鍏ㄥ紑鍏ㄥ叧澶辫触:{ex.Message}"); + } + finally + { + Application.RunOnMainThread(() => + { + waitPage.Hide(); + waitPage.RemoveFromParent(); + }); + } + }) + { IsBackground = true, Priority = System.Threading.ThreadPriority.AboveNormal }.Start(); }; } @@ -395,21 +453,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