From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001 From: hxb <hxb@hdlchina.com.cn> Date: 星期二, 30 八月 2022 09:37:38 +0800 Subject: [PATCH] 合并了IOS的代码 --- ZigbeeApp/Shared/Phone/MainPage/ControlForm/DevicePmSensorDetailCardForm.cs | 198 +++++++++++++++++++++++++++++++------------------ 1 files changed, 126 insertions(+), 72 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/MainPage/ControlForm/DevicePmSensorDetailCardForm.cs b/ZigbeeApp/Shared/Phone/MainPage/ControlForm/DevicePmSensorDetailCardForm.cs index 45f747d..b436761 100755 --- a/ZigbeeApp/Shared/Phone/MainPage/ControlForm/DevicePmSensorDetailCardForm.cs +++ b/ZigbeeApp/Shared/Phone/MainPage/ControlForm/DevicePmSensorDetailCardForm.cs @@ -11,12 +11,16 @@ /// </summary> public class DevicePmSensorDetailCardForm : DeviceDetailCardCommonForm { - #region 鈻� 鍙橀噺澹版槑___________________________ + #region 鈻� 鍙橀噺澹版槑___________________________ /// <summary> /// 鐣岄潰涓婂彲浠ユ搷浣滅殑鎺т欢 /// </summary> private List<ButtonBase> listControl = new List<ButtonBase>(); /// <summary> + /// 鐣岄潰涓婂彲浠ユ搷浣滅殑鎺т欢 + /// </summary> + private List<FrameLayout> listFrameLayout = new List<FrameLayout>(); + /// <summary> /// 鎺т欢 /// </summary> private PMSensor pMSensor = null; @@ -44,7 +48,7 @@ this.pMSensor = (PMSensor)this.device; //鍏堟竻绌� this.listControl = new List<ButtonBase>(); - InitFreshAirControl(frameWhiteBack); + InitPmControl(frameWhiteBack); UpdateStatus(); } @@ -52,7 +56,7 @@ /// 鍒濆鍖朠M2.5浼犳劅鍣ㄦ帶浠� /// </summary> /// <param name="frameWhiteBack"></param> - private void InitFreshAirControl(FrameLayout frameWhiteBack) + private void InitPmControl(FrameLayout frameWhiteBack) { //婀垮害瀹瑰櫒 var frameHumidityPic = new FrameLayout(); @@ -72,25 +76,29 @@ btnHumidityText.TextAlignment = TextAlignment.Center; frameHumidityPic.AddChidren(btnHumidityText); - //婀垮害鏁版嵁锛堢1涓紝listControl銆�0銆戯級 - var btnHumidityStatus = new NormalViewControl(193, 92, true); - btnHumidityStatus.Y = Application.GetRealHeight(181); + //婀垮害鏂囨湰瀹瑰櫒 + var frameHumidityTextFrameLayout = new FrameLayout(); + frameHumidityTextFrameLayout.Gravity = Gravity.CenterHorizontal; + frameHumidityTextFrameLayout.Y = Application.GetRealHeight(113); + frameHumidityTextFrameLayout.Height = Application.GetRealHeight(160); + frameHumidityPic.AddChidren(frameHumidityTextFrameLayout); + + //婀垮害鏁版嵁 + var btnHumidityStatus = new NormalViewControl(193, 160, true); btnHumidityStatus.Text = "20"; - btnHumidityStatus.TextSize = 32; + btnHumidityStatus.TextSize = 30; btnHumidityStatus.TextColor = ZigbeeColor.Current.XMWhite; - btnHumidityStatus.TextAlignment = TextAlignment.CenterRight; - frameHumidityPic.AddChidren(btnHumidityStatus); - this.listControl.Add(btnHumidityStatus); + btnHumidityStatus.TextAlignment = TextAlignment.BottomRight; + frameHumidityTextFrameLayout.AddChidren(btnHumidityStatus); //婀垮害鍗曚綅 - var btnHumidityUnit = new NormalViewControl(37 + 81, 40, true); - btnHumidityUnit.Y = Application.GetRealHeight(181 + 46); - btnHumidityUnit.X = Application.GetRealWidth(190); + var btnHumidityUnit = new NormalViewControl(50, 140, true); + btnHumidityUnit.X = btnHumidityStatus.Right; btnHumidityUnit.Text = "%"; btnHumidityUnit.TextSize = 14; btnHumidityUnit.TextColor = ZigbeeColor.Current.XMWhite; - btnHumidityUnit.TextAlignment = TextAlignment.CenterLeft; - frameHumidityPic.AddChidren(btnHumidityUnit); + btnHumidityUnit.TextAlignment = TextAlignment.BottomLeft; + frameHumidityTextFrameLayout.AddChidren(btnHumidityUnit); //娓╁害瀹瑰櫒 var frameTemperaturePic = new FrameLayout(); @@ -109,25 +117,29 @@ btnTemperatureText.TextAlignment = TextAlignment.Center; frameTemperaturePic.AddChidren(btnTemperatureText); - //娓╁害鏁版嵁锛堢2涓紝listControl銆�1銆戯級 - var btnTemperatureStatus = new NormalViewControl(193, 92, true); - btnTemperatureStatus.Y = Application.GetRealHeight(181); + // 娓╁害鏂囨湰瀹瑰櫒 + var frameTemperatureTextFrameLayout = new FrameLayout(); + frameTemperatureTextFrameLayout.Gravity = Gravity.CenterHorizontal; + frameTemperatureTextFrameLayout.Y = Application.GetRealHeight(113); + frameTemperatureTextFrameLayout.Height = Application.GetRealHeight(160); + frameTemperaturePic.AddChidren(frameTemperatureTextFrameLayout); + + //娓╁害鏁版嵁 + var btnTemperatureStatus = new NormalViewControl(193, 160, true); btnTemperatureStatus.Text = "20"; - btnTemperatureStatus.TextSize = 32; + btnTemperatureStatus.TextSize = 30; btnTemperatureStatus.TextColor = ZigbeeColor.Current.XMWhite; - btnTemperatureStatus.TextAlignment = TextAlignment.CenterRight; - frameTemperaturePic.AddChidren(btnTemperatureStatus); - this.listControl.Add(btnTemperatureStatus); + btnTemperatureStatus.TextAlignment = TextAlignment.BottomRight; + frameTemperatureTextFrameLayout.AddChidren(btnTemperatureStatus); //娓╁害鍗曚綅 - var btnTemperatureUnit = new NormalViewControl(40 + 81, 40, true); - btnTemperatureUnit.Y = Application.GetRealHeight(181 + 46); - btnTemperatureUnit.X = Application.GetRealWidth(188); + var btnTemperatureUnit = new NormalViewControl(50, 140, true); + btnTemperatureUnit.X = btnTemperatureStatus.Right; btnTemperatureUnit.Text = "鈩�"; btnTemperatureUnit.TextSize = 14; btnTemperatureUnit.TextColor = ZigbeeColor.Current.XMWhite; - btnTemperatureUnit.TextAlignment = TextAlignment.CenterLeft; - frameTemperaturePic.AddChidren(btnTemperatureUnit); + btnTemperatureUnit.TextAlignment = TextAlignment.BottomLeft; + frameTemperatureTextFrameLayout.AddChidren(btnTemperatureUnit); //PM2.5浼犳劅鍣ㄧ殑PM2.5瀹瑰櫒 var framePmPic = new FrameLayout(); @@ -146,27 +158,41 @@ btnPmText.TextAlignment = TextAlignment.Center; framePmPic.AddChidren(btnPmText); - //PM2.5鏁版嵁锛堢3涓紝listControl銆�2銆戯級 - var btnPmStatus = new NormalViewControl(109 + 40, 92, true); - btnPmStatus.Y = Application.GetRealHeight(181); - btnPmStatus.Text = "35"; - btnPmStatus.TextSize = 32; - btnPmStatus.TextColor = ZigbeeColor.Current.XMWhite; - btnPmStatus.TextAlignment = TextAlignment.CenterRight; - framePmPic.AddChidren(btnPmStatus); - this.listControl.Add(btnPmStatus); + // PM2.5鏂囨湰瀹瑰櫒 + var framePmTextFrameLayout = new FrameLayout(); + framePmTextFrameLayout.Y = Application.GetRealHeight(113); + framePmTextFrameLayout.Gravity = Gravity.CenterHorizontal; + framePmTextFrameLayout.Height = Application.GetRealHeight(160); + framePmPic.AddChidren(framePmTextFrameLayout); - //PM2.5鍗曚綅 - var btnPmUnit = new NormalViewControl(124 + 15, 43, true); - btnPmUnit.Y = Application.GetRealHeight(181 + 46); - btnPmUnit.X = Application.GetRealWidth(150); + //PM2.5鏁版嵁 + var btnPmStatus = new NormalViewControl(162, 160, true); + btnPmStatus.Text = "155"; + btnPmStatus.TextSize = 30; + btnPmStatus.TextColor = ZigbeeColor.Current.XMWhite; + btnPmStatus.TextAlignment = TextAlignment.BottomRight; + framePmTextFrameLayout.AddChidren(btnPmStatus); + + //PM2.5鍗曚綅 锛堢4涓紝listControl銆�3銆戯級 + var btnPmUnit = new NormalViewControl(144, 148, true); + btnPmUnit.X = btnPmStatus.Right; btnPmUnit.Text = "渭g/m鲁"; btnPmUnit.TextSize = 14; btnPmUnit.TextColor = ZigbeeColor.Current.XMWhite; - btnPmUnit.TextAlignment = TextAlignment.CenterLeft; - framePmPic.AddChidren(btnPmUnit); + btnPmUnit.TextAlignment = TextAlignment.BottomLeft; + framePmTextFrameLayout.AddChidren(btnPmUnit); + + this.listControl.Add(btnHumidityStatus);//锛堢1涓紝listControl銆�0銆戯級 + this.listControl.Add(btnTemperatureStatus);//锛堢2涓紝listControl銆�1銆戯級 + this.listControl.Add(btnPmStatus);//锛堢3涓紝listControl銆�2銆戯級 + this.listControl.Add(btnPmUnit);//锛堢4涓紝listControl銆�3銆戯級 + this.listControl.Add(btnHumidityUnit);//锛堢5涓紝listControl銆�4銆戯級 + this.listControl.Add(btnTemperatureUnit);//锛堢6涓紝listControl銆�5銆戯級 + this.listFrameLayout.Add(frameHumidityTextFrameLayout);//锛堢1涓紝listControl銆�0銆戯級 + this.listFrameLayout.Add(frameTemperatureTextFrameLayout);//锛堢2涓紝listControl銆�1銆戯級 + this.listFrameLayout.Add(framePmTextFrameLayout);//锛堢3涓紝listControl銆�2銆戯級 } - #endregion + #endregion #region 鈻� 鏄惁鑾峰彇缃戝叧鍙嶉鐨勭粨鏋淿____________ @@ -236,31 +262,6 @@ } #endregion - #region 鈻� 璁剧疆鏂规硶 - /// <summary> - ///鍛戒护 - ///0:Off - ///1:Low - ///3:High - ///4:On - ///5:Auto - /// 15:Manual - /// </summary> - private void SetFanComand(int command) - { - //妫�娴嬫槸鍚﹁幏鍙栫綉鍏冲弽棣堢殑缁撴灉,濡傛灉缃戝叧娌℃湁鍥炲,鍒欎細寮瑰嚭娑堟伅 - this.StartCheckResponeResult(this.listControl, (result) => - { - //鎺ユ敹鍒扮綉鍏冲洖澶� - if (result == true) - { - } - }); - - - } - #endregion - #region 鈻� 鍒锋柊鐘舵�乢____________ /// <summary> /// 鍒锋柊鐘舵�� @@ -268,11 +269,64 @@ private void UpdateStatus() { //璁剧疆鐘舵�佹枃瀛� - this.listControl[0].Text = pMSensor.currentTemperature.ToString(); - this.listControl[1].Text = pMSensor.currentHumidity.ToString(); + this.listControl[0].Text = pMSensor.currentHumidity.ToString(); + this.listControl[1].Text = pMSensor.currentTemperature.ToString(); this.listControl[2].Text = pMSensor.currentPmData.ToString(); - //璁剧疆鐘舵�佹枃瀛� - this.SetStatuText(Language.StringByID(R.MyInternationalizationString.uOpen1)); + //璁剧疆鐘舵�佹枃瀛� + var curText = Language.StringByID(R.MyInternationalizationString.AirQuality) + QuailityType(); + this.SetStatuText(curText); + this.listControl[0].Width = this.listControl[0].GetRealWidthByText(); + this.listControl[4].X = this.listControl[0].Right; + this.listControl[1].Width = this.listControl[1].GetRealWidthByText(); + this.listControl[5].X = this.listControl[1].Right; + this.listControl[2].Width = this.listControl[2].GetRealWidthByText(); + this.listControl[3].X = this.listControl[2].Right; + this.listControl[3].Width = this.listControl[3].GetRealWidthByText(); + this.listFrameLayout[0].Width = this.listControl[0].Width + this.listControl[4].Width; + this.listFrameLayout[1].Width = this.listControl[1].Width + this.listControl[5].Width; + this.listFrameLayout[2].Width = this.listControl[2].Width + this.listControl[3].Width; + this.listFrameLayout[0].Gravity = Gravity.CenterHorizontal; + this.listFrameLayout[1].Gravity = Gravity.CenterHorizontal; + this.listFrameLayout[2].Gravity = Gravity.CenterHorizontal; + } + + /// <summary> + /// 璐ㄩ噺绛夌骇 + /// </summary> + private string QuailityType() + { + string curQuality = string.Empty; + + if (pMSensor.currentPmData <= 35 && pMSensor.currentPmData >= 0) + { + curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + } + else if (pMSensor.currentPmData <= 75 && pMSensor.currentPmData > 35) + { + curQuality = Language.StringByID(R.MyInternationalizationString.GoodAirQuality); + } + else if (pMSensor.currentPmData <= 115 && pMSensor.currentPmData > 75) + { + curQuality = Language.StringByID(R.MyInternationalizationString.LightPollution); + } + else if (pMSensor.currentPmData <= 150 && pMSensor.currentPmData > 115) + { + curQuality = Language.StringByID(R.MyInternationalizationString.Moderatelyolluted); + } + else if (pMSensor.currentPmData <= 250 && pMSensor.currentPmData > 150) + { + curQuality = Language.StringByID(R.MyInternationalizationString.HeavyPollution); + } + else if (pMSensor.currentPmData > 250) + { + curQuality = Language.StringByID(R.MyInternationalizationString.SeriousPollution); + } + else + { + curQuality = ""; + } + //璁剧疆鐘舵�佹枃瀛� + return curQuality; } #endregion } -- Gitblit v1.8.0