1
wei
2021-06-01 fdd5cb921b0783ed81c7c9fb3f8327e3f6905c40
HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -35,13 +35,21 @@
        /// </summary>
        FrameLayout environmentalView;
        /// <summary>
        /// 当前温度信息
        /// 当前温度信息-室外
        /// </summary>
        TextButton btnTempValues;
        /// <summary>
        /// 当前湿度信息
        /// 当前湿度信息-室外
        /// </summary>
        TextButton btnHumidityValues;
        /// <summary>
        /// 当前温度信息-室内
        /// </summary>
        TextButton btnIndoorTempValues;
        /// <summary>
        /// 当前湿度信息-室内
        /// </summary>
        TextButton btnIndoorHumiValues;
        /// <summary>
        /// 当前pm2.5状态
        /// </summary>
@@ -184,9 +192,27 @@
                };
                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),
@@ -197,18 +223,44 @@
                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),
@@ -219,18 +271,44 @@
                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),
@@ -241,13 +319,13 @@
                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