应用程序如何访问用于启动屏幕的XIB或故事板? XIB不在主包中(例如:NSBundle.mainBundle().pathsForResourcesOfType(nil, inDirectory: "")
)。这是特别意外的,因为“启动Screen.xib”在“复制捆绑软件资源”构建阶段中列出,但不在捆绑中显示IP,所以Xcode必须特别对待它。以编程方式访问启动屏幕XIB或故事板
6
A
回答
5
由于厦门国际银行是不是在主束越来越路径返回零,但是你可以使用方法
let launchScreenNib = UINib(nibName: "LaunchScreen", bundle: nil)
或
您可以加载得到得到启动画面的XIB不带路径的帮助意见从厦门国际银行作为
// Swift
let objects = NSBundle.mainBundle().loadNibNamed("LaunchScreen", owner: self, options: nil)
let view = objects[0] as UIView
// Obj C
NSArray *objects = [[NSBundle mainBundle] loadNibNamed:@"LaunchScreen" owner:self options:nil];
UIView *view = [objects objectAtIndex:0];
0
跟进,以我自己的问题,它看起来像切换“用作启动屏幕”和关闭造成的Xcode打造为发射画面的NIB文件。
- 执行完整清理(删除DerivedData)并从设备中删除应用程序后,我在LaunchScreen.xib中为主视图控制器切换“用作启动屏幕”。运行该应用程序导致它在没有启动屏幕的情况下启动,但构建现在正在创建LaunchScreen.nib。
- 完成再次清理并从设备中删除应用程序。切换为“用作启动屏幕”并重建。在新的DerivedData文件夹下的应用程序包中,LaunchScreen.nib仍然存在。
bundle.loadNibNamed(...)
现在工作得很好。
4
如果LaunchScreen是storyboard
,而不是一个xib
,使用下面的代码。
let launchScreen = UIStoryboard(name: "LaunchScreen", bundle: nil).instantiateInitialViewController()
if let launchView = launchScreen?.view {
view.addSubview(launchView)
}
相关问题
- 1. 启动屏幕故事板的iOS
- 2. 以编程方式更改启动屏幕图像
- 3. 以编程方式启动IE Mobile收藏夹屏幕
- 4. 如何在Android中以编程方式启动主屏幕
- 5. React Native - 故事板作为启动屏幕不调用viewDidLoad
- 6. 推出iOS屏幕故事板VS启动图像
- 7. 如何表示故事板中的启动屏幕
- 8. 设置为故事板文件时,启动屏幕为黑色
- 9. 以Android编程的屏幕截图问题以编程方式
- 10. 以屏幕截图(以编程方式)
- 11. 在Swift中的代码中添加启动屏幕(无需故事板或Launchboard)
- 12. 以模式为基础的故事板登录屏幕示例
- 13. 从XIB到故事板
- 14. 以编程方式关闭iOS屏幕
- 15. 以编程方式闪烁屏幕
- 16. 以编程方式打开屏幕
- 17. 锁定屏幕以编程方式
- 18. 以编程方式进入主屏幕
- 19. Android屏幕以编程方式打开
- 20. 以编程方式调整故事板上的UITableView的y值
- 21. 如何以编程方式选择故事板?
- 22. Swift - 以编程方式加载故事板
- 23. 如何以编程方式将故事板应用于标签?
- 24. pushViewController无法以编程方式与故事板一起工作
- 25. 以编程方式控制故事板桌面视图
- 26. 以编程方式加载UITableViewController没有故事板
- 27. 以编程方式在委托中调用故事板
- 28. Obj-C以编程方式更改ViewController(两个故事板)
- 29. 无法使用故事板以编程方式切换视图?
- 30. 以编程方式将视图添加到故事板
Xcode没有生成启动屏幕的NIB,所以这段代码会崩溃。如果NIB不在捆绑中,那么'bundle.loadNibNamed(...)'不起作用。我可以通过在Interface Builder中使用“用作启动屏幕”选项来使它工作,这使Xcode能够生成NIB。 – ide 2014-09-22 18:55:58
@ide更新Xcode,默认情况下它会在项目创建过程中创建LaunchScreen.xib。 – 2014-09-23 02:07:23
我的意思是我有LaunchScreen.xib,它在我启动应用程序时显示,只是Xcode不会将它转换为NIB文件并将其复制到包中。 – ide 2014-09-23 06:18:18