| | |
| | | /// </summary> |
| | | FrameLayout environmentalView; |
| | | /// <summary> |
| | | /// 当前温度信息 |
| | | /// 当前温度信息-室外 |
| | | /// </summary> |
| | | TextButton btnTempValues; |
| | | /// <summary> |
| | | /// 当前湿度信息 |
| | | /// 当前湿度信息-室外 |
| | | /// </summary> |
| | | TextButton btnHumidityValues; |
| | | /// <summary> |
| | | /// 当前温度信息-室内 |
| | | /// </summary> |
| | | TextButton btnIndoorTempValues; |
| | | /// <summary> |
| | | /// 当前湿度信息-室内 |
| | | /// </summary> |
| | | TextButton btnIndoorHumiValues; |
| | | /// <summary> |
| | | /// 当前pm2.5状态 |
| | | /// </summary> |
| | |
| | | }; |
| | | topView.AddChidren(environmentalView); |
| | | #region 环境数据 |
| | | var tempSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorTemperature); |
| | | var humiSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorHumidity); |
| | | |
| | | var btnEnvirValuesTitle = new Button() { |
| | | X = Application.GetRealWidth(12), |
| | | Gravity = Gravity.CenterVertical, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextID = StringId.InOutdoor, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | if (tempSensorList.Count > 0 || humiSensorList.Count > 0) |
| | | { |
| | | btnEnvirValuesTitle.Width = Application.GetRealWidth(8)+ btnEnvirValuesTitle.GetTextWidth(); |
| | | } |
| | | environmentalView.AddChidren(btnEnvirValuesTitle); |
| | | |
| | | Button btnTempIcon = new Button() |
| | | { |
| | | X = Application.GetRealWidth(12), |
| | | X = btnEnvirValuesTitle.Right,//+ Application.GetRealWidth(4), |
| | | //X = Application.GetRealWidth(12), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | |
| | | btnTempValues = new TextButton() |
| | | { |
| | | X = btnTempIcon.Right + Application.GetRealWidth(4), |
| | | Width = Application.GetRealWidth(30), |
| | | Gravity = Gravity.CenterVertical, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | Text = MainPage.cityInfo.temperature + "°", |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | btnTempValues.Width = btnTempValues.GetTextWidth(); |
| | | environmentalView.AddChidren(btnTempValues); |
| | | |
| | | btnIndoorTempValues = new TextButton() |
| | | { |
| | | X = btnTempValues.Right, |
| | | Gravity = Gravity.CenterVertical, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = "/--°", |
| | | }; |
| | | if (tempSensorList.Count > 0) |
| | | { |
| | | double tempTotalValues = 0; |
| | | foreach (var temp in tempSensorList) |
| | | { |
| | | double tempValue = 0; |
| | | double.TryParse(temp.GetAttrState(FunctionAttributeKey.Value), out tempValue); |
| | | tempTotalValues += tempValue; |
| | | } |
| | | if (tempTotalValues > 0) |
| | | { |
| | | btnIndoorTempValues.Text = "/" + tempTotalValues + "°"; |
| | | } |
| | | btnIndoorTempValues.Width = btnIndoorTempValues.GetTextWidth(); |
| | | } |
| | | environmentalView.AddChidren(btnIndoorTempValues); |
| | | |
| | | Button btnHumidityIcon = new Button() |
| | | { |
| | | X = btnTempValues.Right + Application.GetRealWidth(2), |
| | | X = btnIndoorTempValues.Right + Application.GetRealWidth(8), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | |
| | | btnHumidityValues = new TextButton() |
| | | { |
| | | X = btnHumidityIcon.Right + Application.GetRealWidth(4), |
| | | Width = Application.GetRealWidth(30), |
| | | Gravity = Gravity.CenterVertical, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | Text = MainPage.cityInfo.humidity + "%", |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | btnHumidityValues.Width = btnHumidityValues.GetTextWidth(); |
| | | environmentalView.AddChidren(btnHumidityValues); |
| | | |
| | | btnIndoorHumiValues = new TextButton() |
| | | { |
| | | X = btnHumidityValues.Right, |
| | | Gravity = Gravity.CenterVertical, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = "/--%", |
| | | }; |
| | | if (tempSensorList.Count > 0) |
| | | { |
| | | double humiTotalValues = 0; |
| | | foreach (var humi in humiSensorList) |
| | | { |
| | | double humiValue = 0; |
| | | double.TryParse(humi.GetAttrState(FunctionAttributeKey.Value), out humiValue); |
| | | humiTotalValues += humiValue; |
| | | } |
| | | if (humiTotalValues > 0) |
| | | { |
| | | btnIndoorHumiValues.Text = "/" + humiTotalValues + "%"; |
| | | } |
| | | btnIndoorHumiValues.Width = btnIndoorHumiValues.GetTextWidth(); |
| | | } |
| | | environmentalView.AddChidren(btnIndoorHumiValues); |
| | | |
| | | Button btnPm25Icon = new Button() |
| | | { |
| | | X = btnHumidityValues.Right + Application.GetRealWidth(2), |
| | | X = btnIndoorHumiValues.Right + Application.GetRealWidth(4), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | |
| | | btnPm25Values = new TextButton() |
| | | { |
| | | X = btnPm25Icon.Right + Application.GetRealWidth(4), |
| | | Width = Application.GetRealWidth(130), |
| | | Gravity = Gravity.CenterVertical, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | Text = MainPage.cityInfo.pm25, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | btnPm25Values.Width = btnPm25Values.GetTextWidth(); |
| | | environmentalView.AddChidren(btnPm25Values); |
| | | #endregion |
| | | |