Календарь Xamarin XLabs Forms не работает на Android

Я использую элемент управления CalendarView в Xamarin Forms из пакета XLabs Nuget в Xamarin Studio.

CalendarView определен, как показано ниже, но на устройстве Android не отображается Calendar:

using System;

using Xamarin.Forms;
using XLabs.Forms.Controls;

namespace CustomRenderer
{
public class MyPage : ContentPage
{
    public MyPage()
    {
        CalendarView calendarView = new XLabs.Forms.Controls.CalendarView 
            {
                MinDate = new DateTime(2016, 1,1),
                MaxDate = new DateTime(2016, 1, 31),
                VerticalOptions = LayoutOptions.FillAndExpand,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                ShowNavigationArrows = true,

                DateBackgroundColor = Color.White,
                IsVisible = true,
            };

        calendarView.DateSelected += (object sender, DateTime e) => {

        };
        Content = new StackLayout
        { 

                HeightRequest = 400,
                WidthRequest = 320,
            Children =
            {
                calendarView
            }
        };
    }
}
}

2 ответа

Решение

Не забудьте инициализировать MainActivity с

MainActivity : XFormsApplicationDroid

И добавьте XLabs в проект Droid. Теперь это работает.

Пожалуйста, используйте ниже код, он будет работать

var MinDt = new DateTime(1970, 1, 1);
                        var MaxDt = new DateTime(2070,1,1);
                        Pages.Add(id, new CarlNavPage(new ContentPage
                        {

                            Content = new CalendarView() {
                                MinDate = CalendarView.FirstDayOfMonth(MinDt),
                                MaxDate = CalendarView.LastDayOfMonth(MaxDt),
                                HighlightedDateBackgroundColor = Color.FromRgb(227, 227, 227),
                                MonthTitleBackgroundColor = Color.FromHex("#f1eff5"),
                                ShouldHighlightDaysOfWeekLabels = false,
                                SelectionBackgroundStyle = CalendarView.BackgroundStyle.Fill,
                                TodayBackgroundStyle = CalendarView.BackgroundStyle.CircleOutline,
                                BackgroundColor = Color.FromHex("#f1eff5"),
                                HighlightedDateForegroundColor = Color.FromHex("#f1eff5"),
                                //  HighlightedDaysOfWeek = new DayOfWeek[] { DayOfWeek.Saturday, DayOfWeek.Sunday },
                                ShowNavigationArrows = true,
                             },
                        }));
Другие вопросы по тегам