无法激活 NavigationPageRenderer 类型的实例

Lit*_*nny 2 navigation master-detail xamarin xamarin.forms

我有一个 MasterDetailPage ,该页面被推送到导航:

await MainPage.Navigation.PushAsync(new MasterDevicePage());
Run Code Online (Sandbox Code Playgroud)

当主设备页面加载时,主页面的列表视图将选择其中一个页面并将其显示在详细信息屏幕上。

masterPage.ListView.ItemSelected += (sender, e) =>
        {
            var item = e.SelectedItem as MasterPageModel;
            if (item != null)
            {
                Detail = new NavigationPage((Page)Activator.CreateInstance(item.TargetType));
                Detail.Title = item.Title;
                masterPage.ListView.SelectedItem = null;
                IsPresented = false;
            }
        };
Run Code Online (Sandbox Code Playgroud)

错误发生在 Detail = new NavigationPage 部分。

找不到 Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer::.ctor(System.IntPtr, Android.Runtime.JniHandleOwnership) 的构造函数

无法从本机句柄 0x85300019 (key_handle 0x42c360f8) 激活 Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer 类型的实例。

Yur*_*i S 6

您可以尝试通过提供构造函数来修复它

public YourClass (IntPtr javaReference, JniHandleOwnership transfer)
            : base ()
        {
        }
Run Code Online (Sandbox Code Playgroud)

但是 MasterDetailPage 永远不应该被推送到导航堆栈。