【问题标题】:how to make the view controller compatible with iphone 5 if xib not taken如果未采用 xib,如何使视图控制器与 iphone 5 兼容
【发布时间】:2013-05-03 04:31:16
【问题描述】:

如果没有使用 xib 文件,如何使视图控制器与 iphone 5 兼容。是否有可能以编程方式进行更改。 提前致谢。

【问题讨论】:

  • “如果它的 xib 文件没有被占用”是什么意思?
  • @IronManGill 添加了没有 xib 文件的视图控制器类,我只以编程方式进行操作。
  • 是的,他说的是其他方式,但并不是我们无法理解他的意思
  • @PrakashDesai 在我的 iphone5 底部显示死区,这意味着屏幕尺寸只有 480,然后这些方法无法实现?
  • 视图大小为 480 意味着它适用于 iphone classic 来解决这个问题,如果我在我的回答中提出了其他建议。您的视图高度为 480,但 iphone 5 的高度超过 550,所以很明显,您将得到死空间希望现在它清楚了 :)

标签: iphone xib


【解决方案1】:

是的,你可以做到这一点。 XIB 也只是文件,只需在文本编辑器中打开一个 - 您会看到它由可读的 xml 代码组成。现在为了使 viewController 与 Iphone 5 兼容,只需设置 if else 条件,并通过检查特定设备的高度来分别为不同设备制作东西
但毫无疑问,这将是一项长期的工作

对于我的通用应用程序,外汇应用程序,我只是像这样使用屏幕高度检测概念:

CGSize screenSize = [[UIScreen mainScreen] bounds].size;

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
    if (screenSize.height > 480.0f) {
        /*Do iPhone 5 stuff here.*/
    } else {
        /*Do iPhone Classic stuff here.*/
    }
} else {
    /*Do iPad stuff here.*/
}

【讨论】:

    【解决方案2】:

    检查设备是否为 iPhone 5 并设置框架编程..

    CGRect screenRect = [[UIScreen mainScreen] applicationFrame];
    
        if (screenRect.size.height >= 548 )
        {
           // set your frame for iPhone 5
        }else
        {
           // set your frame for iPhone 4
        }
    

    【讨论】:

      【解决方案3】:

      是的,您可以通过添加以下条件来做到这一点

      CGSize result = [[UIScreen mainScreen] bounds].size;
      if(result.height == 480)
      {
          iPhone 4 or less 
      }
      else if (result.height == 568)
      {
           iPhone 5 condition
      }
      

      无论您想在哪里区分这两款手机。

      【讨论】:

        猜你喜欢
        • 2012-10-27
        • 1970-01-01
        • 2011-08-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-17
        • 1970-01-01
        相关资源
        最近更新 更多