Visual Studio for Mac 用の Prism Template Pack を使用して新しいプロジェクトを生成し (共有と pcl の両方を試しました)、7.0.0.340-ci に更新しています。ビュー モデルへのビューの登録は慣例で行われますか?
このアプリを実行しようとすると、次の例外がスローされます。Objective-C exception thrown. Name: NSInternalInconsistencyException Reason: Application windows are expected to have a root view controller at the end of application launch.
これがメインアプリのコードです。
public partial class App : PrismApplication
{
public App(IPlatformInitializer initializer = null) : base(initializer) { }
protected override void OnInitialized()
{
InitializeComponent();
NavigationService.NavigateAsync("MainPage?title=Hello%20from%20Xamarin.Forms");
}
protected override void RegisterTypes(Prism.Ioc.IContainerRegistry containerRegistry)
{
Prism.Mvvm.ViewModelLocationProvider.Register<MainPage,MainPageViewModel>();
}
//protected override void RegisterTypes()
//{
// Container.RegisterTypeForNavigation<MainPage>();
//}
}
署名に互換性がないため、最終行をコメントアウトしてオーバーライドをやり直す必要がありました。
Container.RegisterTypeForNavigation はどこに行きましたか、それは何ですか?
また、RegisterTypes メソッドのコードなしで試してみました。
NavigationService プロパティを調べるデバッグ セッションでは、MainPage が null であると表示されます。