我可以为iPhone和iPad分别使用两个应用程序吗?

时间:2016-02-25 11:26:03

标签: ios objective-c iphone user-interface ipad

我已经完成了iPad应用程序,该应用程序仅适用于iPad iTune商店。

但是客户想要为iPhone设计不同但功能相似的应用程序。必须将一些新功能添加到iPhone版本中。我可以使用iPad版本的大多数功能,并有一个新项目,从头开始构建iPhone!

我的要求会在一段时间内发生变化。新要求可能适用于它们中的任何一个或两个。因此,我需要不时地在两个应用程序中添加新功能并同时维护这两个应用程序。这个应用程序非常复杂,超过150个类。我需要一些建议才能知道,只有一个应用程序可以在两个设备上运行,或者更好的做法是为每个iPhone和iPad设置单独的项目?

修改 我想在iPad中使用分割视图控制器和垂直菜单栏,在iPhone中使用侧面菜单和水平菜单栏。

3 个答案:

答案 0 :(得分:3)

如果您想在商店中拥有两个单独的iPhone / iPad应用程序,只需制作应用程序的两个目标。这意味着您可能会使用两个不同的故事板,但这取决于您。转到您的项目设置并制作两个单独的目标 - 一个用于iPad,一个用于iPhone。编辑目标常规设置,其中一个应该仅部署用于iPad,而另一个用于iPhone。发布下面的一些图片:

Making new target

Example Build[2]

您还想要进入管理方案,删除当前的方案并添加您刚刚制作的目标。然后在iPhone版本中设置这些宏,这样您就可以编辑一个代码库而无需编辑手机和平板电脑代码 -

Macros

一些示例代码:

// Just for Phone Target
#ifdef PHONE
- (void)somePhoneMethod;
#endif

// For both phone and tablet device
- (void)aMethod;

我想补充一下每个人所说的内容,如果没有太多差异,只需制作一个通用应用。

答案 1 :(得分:1)

  

在单个故事板中使用自动布局和维护。

     

如果您了解课程,Autolayout Strong,那么我的偏好是   自动版式。

     

这将减少您的时间和最简单的处理。

enter image description here

这是Classes,如果你只想为ipad做垂直布局,你需要选择这样的

enter image description here

像这样你只能选择ipad,iphone,portrait,这样的风景:),这取决于你的决定。

答案 2 :(得分:0)

如果两者的UI相同,那么最好使用现有的iPad和iPhone登记类。