如何将现有的iPhone应用程序转换为通用应用程序?

时间:2014-01-17 05:11:32

标签: ios iphone ipad

我有一个完全适用于iPhone的复杂项目,我希望它也可以在iPad上运行。如果以编程方式完成大部分UI工作,我应该采取哪些步骤来实现这个通用应用程序?

4 个答案:

答案 0 :(得分:1)

您需要按照以下步骤操作:

  1. 为iPad创建故事板。
  2. 如果您以编程方式完成了大量的帧大小调整工作,那么请尝试根据设备动态设置帧。而不是将帧宽设置为32o,您可以将帧宽设置为self.view.frame.size.width。
  3. 对于故事板,您可以将所有视图控制器从iphone故事板复制到ipad故事板,所有插座都将自动为您设置,您只需要设置这些视图的帧。

答案 1 :(得分:-1)

这段代码可以帮助你  我认为你已经通过编码完全创建了你的项目  那么就没有必要再创造任何额外的东西了

只需在-viewWillAppear-viewDidLoad中检查运行设备是ipad或ipad的条件

if([[UIDevice currentDevice]userInterfaceIdiom]==UIUserInterfaceIdiomPhone){

   //iPhone running device
  //set frames of UI as per iphone
   }else{

  //iPad running device
  //set frames of UI as per iPad
}

答案 2 :(得分:-1)

我认为,当您完成UI工作,因此您需要做两件事

  1. 根据设备调用相应的UI。

    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
    { 
        // It's an iPad call your UI for iPad 
    }
    else
    {
       if([[UIScreen mainScreen] bounds].size.height>480.0f)
       {
           //It's an iPhone with 4 inch
       }
       else
       {
          //It's an iPhone with 3.5 inch
       }
    }
    
  2. 从Xcode中选择,让您的应用更加通用 enter image description here

  3. 我不知道故事板,所以如果你的应用程序是故事板基础,那么我认为@Ashu推荐的是正确的。

答案 3 :(得分:-1)

您应该使用Userintefaceidiom来检测您的应用程序是否在iphone4,iphone5或ipad上运行,然后相应地进行UI设计。 要检查您的应用程序正在运行的UI惯用语,您应该检查这些条件,

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
{
  // do your iphone4 UI designing here...
 UILabel *lbl...

}else
   {
     if([[UIScreen mainScreen] bounds].size.height==568){
       // do your iphone5 UI designing here...
       UILabel *lbl...

  }else{
       // do your iphone4 UI designing here...
       UILabel *lbl...

  }

}