Ios5 如何将iPhone应用程序移植到iPad(故事板)
我刚刚完成了我的iPhone应用程序,我想让它具有通用性。我已经读了一些帖子,但它们有点老了(2010年左右) 我得到的:Ios5 如何将iPhone应用程序移植到iPad(故事板),ios5,migration,port,storyboard,universal,Ios5,Migration,Port,Storyboard,Universal,我刚刚完成了我的iPhone应用程序,我想让它具有通用性。我已经读了一些帖子,但它们有点老了(2010年左右) 我得到的: 简单的iPhone应用程序,最近创建的(iOS 5-情节提要),有三个屏幕 我的应用程序代表一张有三张卡片的桌子,你可以通过触摸它们来翻转。用户可以输入(在第二个屏幕上)要在卡片上显示的文本 当我创建这个项目时,我选中了“Universal”,所以我有两个故事板。此后,我所做的一切都与iPad无关(除了我在“联系支持”电子邮件选项中使用UIModalPresentatio
- 简单的iPhone应用程序,最近创建的(iOS 5-情节提要),有三个屏幕
- 我的应用程序代表一张有三张卡片的桌子,你可以通过触摸它们来翻转。用户可以输入(在第二个屏幕上)要在卡片上显示的文本
- 当我创建这个项目时,我选中了“Universal”,所以我有两个故事板。此后,我所做的一切都与iPad无关(除了我在“联系支持”电子邮件选项中使用UIModalPresentationPageSheet的一行)
- iPad上的同一个应用程序:我的应用程序非常简单,不需要分割视图或细节。我只想要相同的对象和布局,但要有更大更好的图形(桌子、卡片等)
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
//I'm running on the iPad
} else {
//I'm running on the iPhone
}
就这样。同样,在像我这样的简单例子中,代码的重用是绝对的(100%),您必须添加的新代码是最少的(基本上如果需要语句的话),UI元素的复制就像复制和粘贴一样简单
我希望这对其他人有用,如果你有改进的建议,他们会非常欢迎。如果你只是想重复使用你的iphone故事板,只需转到你的项目设置。在目标选项卡信息中,有行“主情节提要文件库名称”和“主情节提要文件库名称(iPad)”。只需编辑一个iPad,使其与另一个具有相同的值。在我的例子中,我必须将其编辑为“主情节提要文件基本名称(iPad)”,值为“MainStoryboard\u iPhone”。在finder中打开情节提要文件,复制iPhone情节提要并将其重命名为Main-iPad.storyboard 在xCode内部,右键单击情节提要->“打开为”->“源代码” 搜索targetRuntime=“iOS.CocoaTouch”并使其成为targetRuntime=“iOS.CocoaTouch.iPad” 现在保存所有内容并重新打开Xcode->iPad情节提要包含与iPhone文件相同的内容,但每次都可能会被打乱,您必须自行安排 最后,要获得iPad格式,还需要将MainstryBoard_iPad.storyboard中的代码从:更改为
然后转到“StroryBoardEx Info.plist”文件,搜索“主nib文件基本名称(iPad)”并将其设置为“主iPad.storyboard”Erm。。。编辑iPad情节提要是一个很好的开始。那么对于你的iPad版本,你需要重新制作整个情节提要并重新使用代码吗?再次添加按钮、标签和每个UI元素,并将它们与您当前的方法连接起来?是的,iPhone和iPad平台非常非常逼真。除了少数例外情况外,您应该能够做到这一点没有问题。在我的情况下,将UIButtons连接到新故事板所需的唯一一件事就是添加“IBOutlet”声明。-这不是解决这个问题的最好办法吗?可能引入错误/未更新UI元素、错误命名等的可能性似乎很大:(请参阅此答案(这是关于此问题的评论之一,但实际上是隐藏的)将设备设置为universal,这将非常有效(如果您的autolayout是正确的)