Пример #1
0
 /// <inheritdoc />
 /// <summary>
 /// </summary>
 /// <returns></returns>
 public TableGroup GenerateTable() => new TableGroup(Resources.Title_Astro)
 {
     new TableItem(Resources.Astro_Sunrise, XameteoL10N.ShortTime(XameteoL10N.ParseTime(Sunrise))),
     new TableItem(Resources.Astro_Sunset, XameteoL10N.ShortTime(XameteoL10N.ParseTime(Sunset))),
     new TableItem(Resources.Astro_Moonrise, XameteoL10N.ShortTime(XameteoL10N.ParseTime(Moonrise))),
     new TableItem(Resources.Astro_Moonset, XameteoL10N.ShortTime(XameteoL10N.ParseTime(Moonset)))
 };
Пример #2
0
 /// <inheritdoc />
 /// <summary>
 /// </summary>
 /// <returns></returns>
 public TableGroup GenerateTable() => new TableGroup(Resources.Tab_Now)
 {
     new TableItem(Resources.Forecast_Feels_Like, XameteoApp.Instance.Temperature.Convert(FeelsLike)),
     new TableItem(Resources.Forecast_Humidity, XameteoL10N.Percentage(Humidity)),
     new TableItem(Resources.Forecast_Wind_Velocity, XameteoApp.Instance.Velocity.Convert(WindVelocity)),
     new TableItem(Resources.Forecast_Wind_Direction, XameteoL10N.LongCompass(WindDegree)),
     new TableItem(Resources.Forecast_Pressure, XameteoApp.Instance.Pressure.Convert(Pressure)),
     new TableItem(Resources.Forecast_Precipitation, XameteoApp.Instance.Precipitation.Convert(Precipitation)),
     new TableItem(Resources.Forecast_Visibility, XameteoApp.Instance.Distance.Convert(Visibility))
 };
Пример #3
0
 /// <inheritdoc />
 /// <summary>
 /// </summary>
 /// <returns></returns>
 public TableGroup GenerateTable() => new TableGroup(Resources.Tab_Today)
 {
     new TableItem(Resources.Forecast_Precipitation, XameteoApp.Instance.Precipitation.Convert(Precipitation)),
     new TableItem(Resources.Forecast_Wind_Velocity, XameteoApp.Instance.Velocity.Convert(WindVelocity)),
     new TableItem(Resources.Forecast_Humidity, XameteoL10N.Percentage(Humidity)),
     new TableItem(Resources.Forecast_Visibility, XameteoApp.Instance.Distance.Convert(Visibility)),
     new TableItem(Resources.Forecast_Ultraviolet, Ultraviolet.ToString()),
     Condition.GenerateTable(),
     new TableItem(Resources.Forecast_Average, XameteoApp.Instance.Temperature.Convert(Average)),
     new TableItem(Resources.Forecast_Minimum, XameteoApp.Instance.Temperature.Convert(Minimum)),
     new TableItem(Resources.Forecast_Maxmum, XameteoApp.Instance.Temperature.Convert(Maximum))
 };
Пример #4
0
        /// <summary>
        /// </summary>
        public TodayPage(ForecastDaily forecast)
        {
            _graph = new SkiaGraph(forecast.Hours.Select(hour => new GraphIndex
            {
                Hide    = hour.Date.Hour % 3 != 1,
                Y       = (float)hour.Temperature,
                Label   = XameteoL10N.OnlyHour(hour.Date),
                ImageId = hour.Condition.Image(hour.IsDay)
            }).ToList());

            forecast.Hours.ForEach(it => Items.Add(it.GenerateTable()));
            InitializeComponent();
            BindingContext = this;
        }
Пример #5
0
        /// <summary>
        /// </summary>
        public ForecastPage(Forecast forecast)
        {
            _graph = new SkiaGraph(forecast.Days.Select(hour => new GraphIndex
            {
                Hide    = false,
                Y       = (float)hour.Day.Average,
                ImageId = hour.Day.Condition.Image(true),
                Label   = XameteoL10N.OnlyDayMonth(hour.Date)
            }).Take(7).ToList());

            Items = forecast.Days;
            InitializeComponent();
            BindingContext = this;
        }
Пример #6
0
        /// <summary>
        /// </summary>
        /// <param name="forecast"></param>
        public HistoryView(ForecastDaily forecast)
        {
            _graph = new SkiaGraph(forecast.Hours.Select(hour => new GraphIndex
            {
                Y       = (float)hour.Temperature,
                Hide    = hour.Date.Hour % 3 != 1,
                Label   = XameteoL10N.OnlyHour(hour.Date),
                ImageId = hour.Condition.Image(hour.IsDay)
            }).ToList());

            Items.Add(forecast.Day.GenerateTable());
            Items.Add(forecast.Astro.GenerateTable());
            InitializeComponent();
            BindingContext = this;
        }
Пример #7
0
 /// <summary>
 /// </summary>
 /// <returns></returns>
 public TableItem GenerateTable() => new TableItem(Resources.Forecast_Condition, XameteoL10N.GetCondition(this));
Пример #8
0
 /// <summary>
 /// </summary>
 /// <param name="isDay"></param>
 /// <returns></returns>
 public string Image(bool isDay) => XameteoL10N.GetDrawable(isDay ? $"day_{Id}.png" : $"night_{Id}.png");