Я пытаюсь создать navigation drawer
с помощью Syncfusion SfNavigationDrawer
, но получаю следующее исключение на симуляторе Android.
Java.Lang.NoSuchMethodError: нет метода с именем = 'setClipToOutline' подпись = '(Z) V' в классе Lcom/xamarin/forms/platform/android/FormsViewGroup;
Это мой код:
public class MainPage : ContentPage
{
public MainPage()
{
SfNavigationDrawer nav = new SfNavigationDrawer();
StackLayout mainStack = new StackLayout();
mainStack.Opacity = 1;
mainStack.Orientation = StackOrientation.Vertical;
mainStack.HeightRequest = 500;
mainStack.BackgroundColor = Color.White;
ObservableCollection<String> list = new ObservableCollection<string>();
list.Add("Home");
ListView listView = new ListView();
listView.WidthRequest = 200;
listView.VerticalOptions = LayoutOptions.FillAndExpand;
listView.ItemsSource = list;
mainStack.Children.Add(listView);
nav.DrawerContentView = mainStack;
StackLayout headerLayout = new StackLayout();
headerLayout.Orientation = StackOrientation.Vertical;
Image image = new Image();
image.Source = ImageSource.FromFile("user.png");
headerLayout.Children.Add(image);
Label header = new Label();
headerLayout.Children.Add(header);
nav.DrawerHeaderView = headerLayout;
Button imageButton = new Button();
imageButton.WidthRequest = 50;
Label homeLabel = new Label();
homeLabel.Text = "Home";
homeLabel.FontSize = 15;
homeLabel.TextColor = Color.White;
homeLabel.HorizontalTextAlignment = TextAlignment.Center;
homeLabel.VerticalTextAlignment = TextAlignment.Center;
StackLayout headerFrame = new StackLayout();
headerFrame.Orientation = StackOrientation.Horizontal;
headerFrame.Children.Add(imageButton);
headerFrame.Children.Add(homeLabel);
Label mainLabel = new Label();
mainLabel.Text = "Lorem...";
StackLayout ContentFrame = new StackLayout();
ContentFrame.Orientation = StackOrientation.Vertical;
ContentFrame.BackgroundColor = Color.White;
ContentFrame.Children.Add(headerFrame);
ContentFrame.Children.Add(mainLabel);
nav.ContentView = ContentFrame;
nav.Position = Position.Left;
nav.Transition = Transition.SlideOnTop;
this.Content = nav;
}
}
Я использую Xamarin.Forms 2.3.0.49
и Syncfusion ES 14.2.0.26
. И я должен отметить, что обновление Xamarin
и Android build-tools
не помогло.