在Xcode 6中为不同设备创建不同的故事板。

17
在新版本的Xcode 6中,我们只有一个适用于通用应用程序的Storyboard。但我的应用程序的区别不仅在于iPhone和iPad之间屏幕大小的不同。我的iPhone屏幕不会旋转,只是竖屏显示,而我的iPad屏幕则可旋转。我的iPhone第一个屏幕是表视图,而我的iPad第一个屏幕是集合视图,还有其他差异。我该如何在Xcode 6中实现这一点?
换句话说,在Xcode 5中,即使使用通用应用程序,我也有两个Storyboard,一个用于iPad,另一个用于iPhone。但现在,在Xcode 6中,只有一个适用于通用应用程序的Storyboard。我想再次拥有两个Storyboard,但我找不到如何做到这一点的方法。

我不太明白你的意思,但是你应该为iPhone和iPad创建不同的故事板,而不是为不同的iPhone屏幕尺寸创建。这回答了你的问题吗? - user821127
很抱歉,英语不是我的母语。我会尽力解释。在xcode 5中,即使使用通用应用程序,我有两个storyboard,一个用于iPad,另一个用于iPhone。但是现在,在xcode 6中,通用应用程序只有一个storyboard。我想再次拥有两个storyboard,但我找不到如何做到这一点。 - Alexandre Nunes Costa
好的。是的,正如马特指出的那样,你仍然可以这样做。但是你需要手动配置它,就像在Xcode 5中所做的一样。 - user821127
我没有权限在我的问题中放置图片,但是在Xcode 6中,没有像Xcode 5中那样配置两个storyboard的字段。我已经将打印上传到了我的Google Drive中。https://drive.google.com/folderview?id=0B3Rrrm2gKi_JVDltVjFxdGpuWWc&usp=sharing - Alexandre Nunes Costa
你没有听 @TechNet-Weblineindia 告诉你的话。在 Info.plist 中查找你现有的双层故事板应用程序。配置新应用程序的 _Info.plist_,使其看起来像那样。 - matt
2个回答

47
  1. 打开项目设置 >> 选择信息
  2. 在自定义的iOS目标属性中添加新行,命名为“Main storyboard file base name(iPad)”,并将值设置为“你的新故事板文件名称”

或者 您可以在我的博客中找到方法

Xcode 6:为iPad和iPhone分别创建故事板


3
最佳解决方案!感谢。 - Thomás Pereira
谢谢,非常有帮助。 - Natasha

7
在Xcode 5中,即使使用通用应用程序,我也有两个Storyboard,一个是iPad,另一个是iPhone。但现在,在Xcode 6中,通用应用程序只有一个Storyboard。我想再次拥有两个Storyboard,但我没有找到如何做到这一点。
按照在Xcode 5中的方式操作即可。在Xcode 6的通用应用程序中,没有规定必须只有一个Storyboard。旧方法仍然有效。我有一些应用程序仍然采用这种方法(在iOS 8上重新编译的Xcode 6),它可以正常工作。
然而,无疑发生了一些奇怪的事情。看看这个截图。它显示在Xcode 6中同时打开了两个项目。其中一个显示了iPhone / iPad按钮,以在通用设置中切换设置;另一个则没有。我找不到两个项目之间导致此不同界面的差异。

1
我没有权限在我的问题中放置图片,但是在Xcode 6中,没有像Xcode 5中那样配置两个storyboard的字段。我已经将打印上传到了我的Google Drive上。https://drive.google.com/folderview?id=0B3Rrrm2gKi_JVDltVjFxdGpuWWc&usp=sharing - Alexandre Nunes Costa
1
我没有提到任何关于字段的事情。那些字段只是用于编辑_Info.plist_的前端。学会直接编辑_Info.plist_。 - matt
5
除了你可以做到这一点。切换到 iPhone 并设置 iPhone 的故事板名称。切换到 iPad 并设置 iPad 的故事板名称。现在切换到通用。什么也不必做。完成。基本上,他们使界面更加简单易用。 - matt
5
或者,通过使用自动命名来完全自动化,例如Main.storyboardMain~ipad.storyboard - matt
2
好的,现在我已经给你提供了三种不同的设置方式。 - matt
显示剩余3条评论

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