[.Net MAUI]iOSアプリでスワイプを完全禁止にしたい

実現したいこと

アプリ起動時から全画面においてスワイプでのページ遷移(戻る)を禁止にしたいです

発生している問題・分からないこと

下記URLを参考に実装してみていますが、アプリ起動時に例外発生で落ちてしまいます
・リンク内容
・リンク内容

該当のソースコード

AppDelegate.cs

1public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) 2 { 3 // iOS 13以降 4 if (UIDevice.CurrentDevice.CheckSystemVersion(13, 0)) 5 { 6 UIViewController? viewController = UIApplication.SharedApplication?.KeyWindow?.RootViewController; 7 UINavigationController? navigationController = viewController as UINavigationController; 8 navigationController.InteractivePopGestureRecognizer.Enabled = false; 9 } 10 else 11 { 12 UINavigationController? navigationController = Window?.RootViewController as UINavigationController; 13 navigationController.InteractivePopGestureRecognizer.Enabled = false; 14 } 15 return base.FinishedLaunching(application, launchOptions); 16 }

試したこと・調べたこと

上記の詳細・結果

InteractivePopGestureRecognizerがジェスチャー用のプロパティだと思うため、
EnableをFalseにすることで上手くいくのではないかと思い実装しましたが、下記のエラーが発生してしまいます。
Program.cs

System.NullReferenceException

iOS13以降の場合、"KeyWindow"がNullになっていおり、落ちてしまうことまではわかったのですが、それをどう対処するのがベターかわからない状態です

補足

.Net Maui(C#)
Visual Studio for Mac

コメントを投稿

0 コメント