从框架加载故事板
Loading a storyboard from a framework
我正在使用 Cocoapods 和 Swift 1.2 创建一个库。我有一个故事板,我必须加载到我的库中。虽然,我总是遇到同样的错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'Main' in bundle`.
我尝试过的:
- 将我的故事板放入
Classes
文件夹
- 将我的故事板放入
Assets
文件夹
- 从设备中删除我的应用程序,清理项目并重新构建。
- 使用
UIStoryboard(name:"Main", bundle:nil)
- 使用
UIStoryboard(name:"Main", bundle:NSBundle(forClass:self))
- 使用
UIStoryboard(name:"Main", identifier:myIdentifier)
虽然我能够从我的示例项目中加载故事板,但我只能实例化初始视图控制器。
尝试从初始视图控制器调用 storyboard!.instantiateViewControllerWithIdentifier(someIdentifier)
总是导致找不到视图控制器,尽管我可以清楚地看到有一个带有该标识符的视图控制器。我该如何解决这个问题?
找到问题了。只是愚蠢,但在从项目中删除 Main.storyboard 之后,我没有将其从项目设置中删除。尝试将其加载为初始视图控制器。更改设置后,UIStoryboard(name:"Main", bundle:NSBundle(forClass:self)
正常工作。
我正在使用 Cocoapods 和 Swift 1.2 创建一个库。我有一个故事板,我必须加载到我的库中。虽然,我总是遇到同样的错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'Main' in bundle`.
我尝试过的:
- 将我的故事板放入
Classes
文件夹 - 将我的故事板放入
Assets
文件夹 - 从设备中删除我的应用程序,清理项目并重新构建。
- 使用
UIStoryboard(name:"Main", bundle:nil)
- 使用
UIStoryboard(name:"Main", bundle:NSBundle(forClass:self))
- 使用
UIStoryboard(name:"Main", identifier:myIdentifier)
虽然我能够从我的示例项目中加载故事板,但我只能实例化初始视图控制器。
尝试从初始视图控制器调用 storyboard!.instantiateViewControllerWithIdentifier(someIdentifier)
总是导致找不到视图控制器,尽管我可以清楚地看到有一个带有该标识符的视图控制器。我该如何解决这个问题?
找到问题了。只是愚蠢,但在从项目中删除 Main.storyboard 之后,我没有将其从项目设置中删除。尝试将其加载为初始视图控制器。更改设置后,UIStoryboard(name:"Main", bundle:NSBundle(forClass:self)
正常工作。