Xcode 9 布局:有没有办法为 iPad 构建一个与 iPhone 相同内容的新故事板?
Posted
技术标签:
【中文标题】Xcode 9 布局:有没有办法为 iPad 构建一个与 iPhone 相同内容的新故事板?【英文标题】:Xcode 9 Layout: Is there a way to build a new storyboard with the same content from the iPhone just for the iPads? 【发布时间】:2018-08-14 14:34:35 【问题描述】:我在为所有设备获取带有约束的布局时遇到问题,所以我的问题是,是否可以使用相同的代码、segues 等为 iPad 构建额外的故事板,这样更容易获得布局正确。
【问题讨论】:
【参考方案1】:是的,有办法,您可以复制现有故事板并将其重命名为iPad_Main.storyboard
,然后您必须更正一些约束或更改适合 iPad 屏幕的值。
然后在初始化任何视图控制器之前,您必须检查设备是 iPad 还是 iPhone,并基于此使用您的故事板。
let deviceIdiom = UIScreen.main.traitCollection.userInterfaceIdiom
let storyboard : UIStoryBoard!
if (deviceIdiom == .pad)
storyboard = UIStoryboard(name: "iPad_Main", bundle: nil)
else
storyboard = UIStoryboard(name: "Main", bundle: nil)
// Use storyboard to get desired controller using StoryboardID of UIViewController
【讨论】:
如何检查使用的是哪个设备?我将如何选择要使用的情节提要? @DogukanA 我已经用一些示例代码更新了我的答案,希望对您有所帮助。以上是关于Xcode 9 布局:有没有办法为 iPad 构建一个与 iPhone 相同内容的新故事板?的主要内容,如果未能解决你的问题,请参考以下文章
自动调整 iPhone xib 应用程序到 ipad 的大小
有没有办法在 Xcode 9 中更改每个方案的 .xcconfig 文件?