微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

xamarin 错误:NSInternalInconsistencyException 原因:应用程序窗口应该在应用程序结束时有一个根视图控制器

如何解决xamarin 错误:NSInternalInconsistencyException 原因:应用程序窗口应该在应用程序结束时有一个根视图控制器

我正在尝试重新组织一个用 Xamarin 编写的旧应用程序。应用程序在未在模拟器中打开应用程序的情况下出现以下错误。你能帮我吗?

抛出Objective-C异常。名称:NSInternalInconsistencyException 原因:应用程序窗口应该在应用程序启动结束时有一个根视图控制器 本机堆栈跟踪: 0 核心基金会 0x00007fff20421af6 __exceptionPreprocess + 242 1 libobjc.A.dylib 0x00007fff20177e78 objc_exception_throw + 48 2 CoreFoundation 0x00007fff2042191f +[NSException raise:format:] + 0 3 基础 0x00007fff2077156a -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191 4 UIKitCore 0x00007fff2469a8fc -[UIApplication _runWithMainScene:transitionContext:completion:] + 2148 5 UIKitCore 0x00007fff23cc36f7 -[_UISceneLifecycleMultiplexer completeApplicationLaunchWithFBSScene:transitionContext:] + 122 6 UIKitCore 0x00007fff24251d1e _UIScenePerformActionsWithLifecycleActionMask + 88 7 UIKitCore 0x00007fff23cc4206 __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke + 198 8 UIKitCore 0x00007fff23cc3cca -[_UISceneLifecycleMultiplexer _performBlock:withApplicationOfDeactivationReasons:fromreasons:] + 474 ...... https://www.palferi.hu/sitemap_index.xml

解决方法

iOS9 要求所有的 Window 必须有一个 rootViewController,你应该像这样编辑 AppDelegate:

public override bool FinishedLaunching (UIApplication application,NSDictionary launchOptions)
        {
            // Override point for customization after application launch.
            // If not required for your application you can safely delete this method

            var indexVC = new IndexViewController ();
            window = new UIWindow ((CGRect)UIScreen.MainScreen.Bounds);
            window.RootViewController = indexVC;
            window.MakeKeyAndVisible ();


            return true;
        }

您可以参考this page了解更多详情。

ios9之后有一些变化,可以参考thisthis页面

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。