我有一个iPhone应用程序,它有一个故事板。现在我还想提供一个iPad应用程序。我问自己是否有一个函数可以帮助我将iPhone的故事板转换成iPad的故事板。
具体来说:
是否有类似的功能,还是只有手动的方式?
我有一个iPhone应用程序,它有一个故事板。现在我还想提供一个iPad应用程序。我问自己是否有一个函数可以帮助我将iPhone的故事板转换成iPad的故事板。
具体来说:
是否有类似的功能,还是只有手动的方式?
当前回答
1 -创建“MainStoryboard_iPad.storyboard”;
2 -右键单击“MainStoryboard_iPhone.”故事板”和“打开作为->源代码”。所有复印件;
3-右键单击“MainStoryboard_iPad”。故事板”和“打开作为->源代码”。粘贴了一切。现在搜索和改变:
targetRuntime = " iOS。CocoaTouch" to targetRuntime="iOS.CocoaTouch.iPad" type = " com.apple.InterfaceBuilder3.CocoaTouch.Storyboard。" to type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.iPad.XIB"
4 -保存。现在重新打开,但是使用接口构建器。你只需要重新安排。
此方法也可用于.xib文件
其他回答
这是另一种方式,但我能够做一个全选&复制在我的iPad故事板(~35个场景),并粘贴到我的iPhone故事板。场景大小自动调整。我只看到了两个问题,我必须替换UISplitViewController(因为它只是iPad),默认背景变成透明而不是灰色(仍在正确地修复这个问题,无需手动设置所有背景)。
编辑:在属性检查器中UITableView的默认背景似乎很奇怪。对于分组的表视图,我必须手动设置背景为“组表视图背景色”,对于非分组的表视图,我必须手动设置背景为“白色”。然后它被显示为“Default”(我假设它匹配了一个硬编码的值)。实际上,更简单的是,从“分组”切换到“静态”,然后再切换回来似乎会重置默认颜色。
谢谢大家的回答。
我遵循了上述步骤,但当我在模拟器或iPad下运行应用程序时,它只使用iPhone故事板继续运行。
由于某种原因,当我将目标设备改为Universal而不是iPhone时,Xcode (v5.0)没有更新app-Info。plist文件来包含iPad故事板,所以我必须手动添加以下条目(使用Xcode中的plist编辑器):
主故事板文件基名(iPad) ==> MainStoryboard_iPad
我只是改变了(另外从@tharkay的答案):
<device id="ipad9_7" orientation="landscape">
效果很好!
我在XCode 8.3.3中使用了这个
对于那些可能对我的观点有异议的人,我想简短地提醒一下:
我的问题:
故事板内容很好地复制到我添加的新板文件中。但是,它不会将更改转移到我配备的iPad上。注意到我必须为构建目标切换指定的故事板(见图),让更改显示出来。
如果我有点,我会张贴一个图像,但设置位于:
左侧源菜单上的项目导航器,项目的根目标(中心窗格)一般选项卡,(第二子标题)部署信息,选择iPad按钮选项卡。
从那里,在“主界面”下选择你的故事板。
谢谢你的帖子,我希望这能帮助你解决问题。
这对我不太管用。我做了一些不同的事情。
为iPad版本创建一个新的故事板文件 在textwrangler(文本编辑器)中打开新文件和我想复制的文件 在这些xml标记之间将xml文本从旧文件复制到新文件 第一个标签<scenes> <!——内容视图控制器——> 粘贴在这里 结束标签</class> </classes> .结束标签
这对我很管用。我得到了一个新的布局,所有的插座都连接在一起,这为我节省了几个小时。