From 203c3a3ffde6259413d9743f6a723b95b1e7989c Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 06 七月 2023 22:43:05 +0800 Subject: [PATCH] 门锁功能 --- HDL_ON/UI/UI2/FuntionControlView/Acst/AcstSubPage.cs | 112 ++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 76 insertions(+), 36 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Acst/AcstSubPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Acst/AcstSubPage.cs index 593a132..6669399 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Acst/AcstSubPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Acst/AcstSubPage.cs @@ -21,29 +21,47 @@ Function function; uint curColor; + string colorString; string imageFolder = "blue"; public static void UpdateStatus(Function temp) { - if(bodyView == null) + if(bodyView == null || bodyView.function.sid != temp.sid) { return; } Application.RunOnMainThread(() => { bodyView.btnTempValues.Text = temp.GetAttrState(AcstSub_AttrEnum.room_temp.ToString()); bodyView.btnHumiValues.Text = temp.GetAttrState(AcstSub_AttrEnum.room_humidity.ToString()); - bodyView.btnSetTempValues.Width = bodyView.btnSetTempValues.GetTextWidth() + Application.GetRealWidth(10); - bodyView.tempBar.Progress = Convert.ToInt32(temp.GetAttrState(FunctionAttributeKey.SetTemp)) + 16; + + + int setTempValue = 0; + double dd = 0; + double.TryParse(temp.GetAttrState(AcstSub_AttrEnum.set_temp.ToString(), "--"), out dd); + setTempValue = Convert.ToInt32(dd); + if (setTempValue != 0) + bodyView.btnSetTempValues.Text = setTempValue.ToString(); + + //bodyView.btnSetTempValues.Width = bodyView.btnSetTempValues.GetTextWidth() + Application.GetRealWidth(10); + + //int progress = 0; + //int.TryParse(temp.GetAttrState(AcstSub_AttrEnum.set_temp.ToString()), out progress); + if (bodyView.tempBar.Progress != setTempValue - 16) + bodyView.tempBar.Progress = setTempValue - 16; if(temp.trait_on_off.curValue.ToString() == "on") { bodyView.btnPowerControl.IsSelected = true; - bodyView.tempBar.IsOffline = false; + bodyView.tempBar.ProgressBarColor = bodyView.curColor; + //bodyView.tempBar.IsClickable = function.trait_on_off.curValue.ToString() == "off", + //bodyView.tempBar.IsOffline = false; + } else { bodyView.btnPowerControl.IsSelected = false; - bodyView.tempBar.IsOffline = true; + bodyView.tempBar.ProgressBarColor = CSS_Color.DividingLineColor; + //bodyView.tempBar.IsOffline = true; } }); @@ -56,21 +74,24 @@ switch (imageFolder) { case "blue": - curColor = CSS.CSS_Color.MainColor; + curColor = CSS_Color.MainColor; + colorString = "#4484F4"; break; case "orange": curColor = 0xFFFFB848; + colorString = "#FFB848"; break; case "purple": curColor = 0xFF9175F3; + colorString = "#9175F3"; break; } bodyView = this; } - public void LoadPage() + public void LoadPage(Action action) { - new TopViewDiv(bodyView, function.GetRoomListName()).LoadTopView(); + new TopViewDiv(bodyView, function.name).LoadTopView_FunctionTop(function,action); var contentView = new FrameLayout() { @@ -98,69 +119,71 @@ var tempValuesView = new FrameLayout() { X = Application.GetRealWidth(21), - Y = Application.GetRealWidth(17), + Y = Application.GetRealWidth(22), Width = Application.GetRealWidth(130), Height = Application.GetRealWidth(132), }; tempHumiView.AddChidren(tempValuesView); btnTempValues = new Button() { - Y = Application.GetRealWidth(45), - Height = Application.GetRealWidth(35), + Y = Application.GetRealWidth(38), + Height = Application.GetRealWidth(66), IsBold = true, TextSize = 30, TextColor = CSS.CSS_Color.FirstLevelTitleColor, TextAlignment = TextAlignment.TopRight, - Text = "---", + Text = function.GetAttrState(AcstSub_AttrEnum.room_temp.ToString(),"---"), }; - btnTempValues.Text = function.GetAttrState(AcstSub_AttrEnum.room_temp.ToString()); +#if __IOS__ + btnTempValues.Width = btnTempValues.GetTextWidth() + Application.GetRealWidth(10); +#else btnTempValues.Width = btnTempValues.GetTextWidth(); +#endif btnTempValues.Gravity = Gravity.CenterHorizontal; tempValuesView.AddChidren(btnTempValues); var btnTempValuesUint = new Button() { X = btnTempValues.Right, - Y = Application.GetRealWidth(48), + //Y = Application.GetRealWidth(48), + Y = Application.GetRealWidth(45), + Height = Application.GetRealWidth(66), TextAlignment = TextAlignment.TopLeft, Width = Application.GetRealWidth(30), - Height = Application.GetRealWidth(30), + //Height = Application.GetRealWidth(30), TextSize = 10, TextColor = CSS.CSS_Color.FirstLevelTitleColor, Text = "掳C" }; tempValuesView.AddChidren(btnTempValuesUint); - - var humiValuesView = new FrameLayout() { X = Application.GetRealWidth(130+21), - Y = Application.GetRealWidth(17), + Y = Application.GetRealWidth(22), Width = Application.GetRealWidth(130), Height = Application.GetRealWidth(132), }; tempHumiView.AddChidren(humiValuesView); btnHumiValues = new Button() { - Y = Application.GetRealWidth(45), - Height = Application.GetRealWidth(35), + Y = Application.GetRealWidth(39), + Height = Application.GetRealWidth(66), IsBold = true, TextSize = 30, TextColor = CSS.CSS_Color.FirstLevelTitleColor, - Text = "---", + Text = function.GetAttrState(AcstSub_AttrEnum.room_humidity.ToString(),"---"), TextAlignment = TextAlignment.TopRight, }; - btnHumiValues.Text = function.GetAttrState(AcstSub_AttrEnum.room_humidity.ToString()); btnHumiValues.Width = btnTempValues.GetTextWidth(); btnHumiValues.Gravity = Gravity.CenterHorizontal; humiValuesView.AddChidren(btnHumiValues); var btnHumiValuesUint = new Button() { X = btnTempValues.Right, - Y = Application.GetRealWidth(48), + Y = Application.GetRealWidth(45), TextAlignment = TextAlignment.TopLeft, Width = Application.GetRealWidth(30), - Height = Application.GetRealWidth(30), + Height = Application.GetRealWidth(66), TextSize = 10, TextColor = CSS.CSS_Color.FirstLevelTitleColor, Text = "%" @@ -169,7 +192,7 @@ EventHandler<MouseEventArgs> eventHandler = (sender, e) => { - var page = new AcstSubHistoryPage(function); + var page = new AcstSubHistoryPage(function, colorString); MainPage.BasePageView.AddChidren(page); page.LoadPage(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; @@ -181,25 +204,36 @@ #endregion + int setTempValue = 0; + string setTempStr = "--"; + double dd = 0; + double.TryParse(function.GetAttrState(AcstSub_AttrEnum.set_temp.ToString(), "--"), out dd); + setTempValue = Convert.ToInt32(dd); + if (setTempValue != 0) + setTempStr = setTempValue.ToString(); btnSetTempValues = new Button() { - Gravity = Gravity.CenterHorizontal, + X = Application.GetRealWidth((375 - 77 -30)/2), Y = Application.GetRealHeight(260), - Width = Application.GetRealWidth(71), + Width = Application.GetRealWidth(73), Height = Application.GetRealHeight(90), - TextAlignment = TextAlignment.TopRight, + TextAlignment = TextAlignment.TopCenter, TextColor = CSS.CSS_Color.FirstLevelTitleColor, IsBold = true, TextSize = 60, - Text = function.GetAttrState(AcstSub_AttrEnum.set_temp.ToString(), "--") + Text = setTempStr }; contentView.AddChidren(btnSetTempValues); +#if __IOS__ + bodyView.btnSetTempValues.Width = bodyView.btnSetTempValues.GetTextWidth() + Application.GetRealWidth(10); +#endif + var btnSetTempUnit = new Button() { X = btnSetTempValues.Right + Application.GetRealWidth(3), Y = Application.GetRealHeight(267), - Width = Application.GetRealWidth(30), + Width = Application.GetRealWidth(50), Height = Application.GetRealHeight(50), TextSize = 23, TextColor = CSS.CSS_Color.FirstLevelTitleColor, @@ -223,6 +257,10 @@ }; contentView.AddChidren(btnMinValuesText); + + //int progress = 0; + //int.TryParse(function.GetAttrState(FunctionAttributeKey.SetTemp),out progress); + tempBar = new DiyImageSeekBar() { Gravity = Gravity.CenterHorizontal, @@ -234,11 +272,13 @@ ThumbImageHeight = Application.GetRealHeight(51), ProgressBarColor = function.trait_on_off.curValue.ToString() == "on" ? curColor : CSS_Color.DividingLineColor, MaxValue = 14, - Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.SetTemp)) + 16, + Progress = setTempValue - 16, SeekBarPadding = Application.GetRealWidth(20), IsProgressTextShow = false, ProgressChangeDelayTime = 0, - IsOffline = function.trait_on_off.curValue.ToString() == "off", + //IsClickable = function.trait_on_off.curValue.ToString() == "off", + //Enable = function.trait_on_off.curValue.ToString() == "off", + //IsOffline = true,// function.trait_on_off.curValue.ToString() == "off", }; contentView.AddChidren(tempBar); tempBar.OnProgressChangedEvent = (sender, e) => { @@ -247,7 +287,7 @@ tempBar.OnStopTrackingTouchEvent = (sender, e) => { new System.Threading.Thread(() => { var d = new Dictionary<string, string>(); - d.Add(FunctionAttributeKey.SetTemp, e.ToString()); + d.Add(FunctionAttributeKey.SetTemp, (e+16).ToString()); Control.Ins.SendWriteCommand(function, d); }) { IsBackground = true }.Start(); @@ -269,8 +309,6 @@ - - btnPowerControl = new Button() { Y = Application.GetRealHeight(496), @@ -288,12 +326,14 @@ new System.Threading.Thread(() => { Dictionary<string, string> d = new Dictionary<string, string>(); - d.Add("onoff", btnPowerControl.IsSelected ? "on" : "off"); + d.Add(FunctionAttributeKey.OnOff, btnPowerControl.IsSelected ? "on" : "off"); Control.Ins.SendWriteCommand(function, d); }) { IsBackground = true }.Start(); }; + Control.Ins.SendReadCommand(function); + } } } -- Gitblit v1.8.0