错误: 可能未设置指定的入口点?

9
大家好,我正在学习这个很棒的教程:链接。但是我没有下载起始项目,因为我想要创建一个不同的应用程序。我已经完成了所有我想弹出的CenterViewController和左侧的ViewController都在ContainerViewController中的设置。但是在控制台中显示如下内容:

2014-11-19 14:04:46.838 SlideTable[3612:87749] Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the designated entry point is not set?

我也尝试了答案,但结果相同。

这个错误是什么意思?我已经按照作者在起始项目中提供的所有必要操作进行了操作,但是没有找到任何解决方案。

这是我的项目代码:

AppDelegate.swift

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    window = UIWindow(frame: UIScreen.mainScreen().bounds)

    let containerViewController = ContainerViewController()

    window!.rootViewController = containerViewController
    window!.makeKeyAndVisible()

    return true
}

我有什么遗漏吗? 如果需要,我将提供更多信息。

6个回答

18

我曾遇到相同的问题并找到了解决方案:

  1. 选择Main.storyboard;
  2. 打开Attributes检查器,点击“视图控制器”部分的Is Initial View Controller

根据相同的错误信息,这个操作对我很有效。


1
勾选“Is Initial View Controller”后,你会在Storyboard的左侧看到一个箭头。这确认了你选择的是哪个Storyboard来启动你的应用程序。 - ShakeMan

7
您的应用程序的主控制器(入口点),右侧栏是否已选中“Is Initial View Controller”?它将显示一个箭头。

6

Xcode 11和iOS 13的更新。

除了elia的回答外,在Info.plist文件中还需要更改一个属性。

在Info.plist文件中,需要将“Storyboard Name”的字符串值更改为您想要在应用程序启动时首先出现的初始文件的名称。默认情况下,“Storyboard Name”的值设置为“Main”,您需要更改它。

您可以在以下位置找到该属性:

Info.plist -> Application Scene Manifest -> Scene Configuration -> Application Session Role -> Item 0 -> Storyboard Name


4

我通过点击

产品 -> 清理构建文件夹

解决了这个问题。


为什么会发生这种情况? - Bruno Araujo

3

当你使用多个UIStoryboard并想要初始化你的UIViewController,除了例如Main.storyboard之外,比如Intro.storyboard,那么你可能会遇到这个错误。你必须选择...

YourProject  -> TARGETS ->  Deployment Info -> Main Interface

在“主界面”中,有几个“UIStoryboard”是你为自己的项目创建的。选择正确的一个,其中包含你的“UIViewController”。
我的意思是:
“YourProject -> TARGETS -> General -> Deployment Info -> Main Interface。”
而不是“YourProject -> TARGETS -> Deployment Info -> Main Interface。”

2

IOS 12和IOS 13之间存在兼容性问题。因此,您需要从info.plist中删除应用程序场景清单,以使其正确运行。此外,您还需要从App Delegate中删除与场景相关的所有内容。


从我试图做的事情来看,你只需要从 Info.plist 中删除 UISceneStoryboardFile 的值。 - ThomasW

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接