iPhone - iPhone5 对现有应用程序的支持?
Posted
技术标签:
【中文标题】iPhone - iPhone5 对现有应用程序的支持?【英文标题】:iPhone - iPhone5 support to existing app? 【发布时间】:2012-10-22 07:25:15 【问题描述】:我是否必须为 iPhone5 放置一个单独的 xib,如 1 为 iPhone5 和 1 为 iPhone4 和更少这样做似乎是非常糟糕的做法。 任何人都可以对此有所了解吗? iPhone5也使用自动布局?我不明白 Autolayout 的工作原理。
【问题讨论】:
raywenderlich.com/20881/beginning-auto-layout-part-1-of-2 ***.com/questions/12702546/… 【参考方案1】:观看有关该主题的 WWDC 2012 视频。三个 1 小时的视频教会了我将应用迁移到自动布局所需的所有知识。
https://developer.apple.com/videos/wwdc/2012/
【讨论】:
【参考方案2】:如果您的主要问题是新的屏幕尺寸,请确保添加 Default-568h@2x.png。 您的应用需要这张 640 × 1136 的图像才能利用 iPhone 5 的全屏。
也用
[[UIScreen mainScreen] applicationFrame]
获取当前屏幕的宽度和高度。不要硬编码 320 宽 480 高。
CGRect aFrame = [[UIScreen mainScreen] applicationFrame];
width=aFrame.size.width; height=aFrame.size.height;
【讨论】:
这是有道理的,但正如我上面所说的,你不认为苹果会创造一些更容易的东西吗? 更简单?这很容易,雷。 Ray 总是更好地使您的代码更智能以克服诸如此类的简单障碍。不要依赖苹果让它变得更容易。会欣赏 1 或支票 Ray。【参考方案3】:单独的 xib 文件:是的,是可能的方法之一。
自动布局:http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
(谷歌第一击)。
【讨论】:
【参考方案4】:我修改了我的应用程序以包含自动布局。老实说,如果我能更主动一些,我会在设计它们时就考虑到新的屏幕尺寸——我不会再犯这样的错误了!
你如何处理它实际上取决于你如何设计你的原始应用程序。
【讨论】:
【参考方案5】:我发现并将帮助其他人: https://github.com/mindsnacks/UIImage-MSImageNamed568hSupport
使用它,我们可以为 iPhone5 加载 568h 大小的图像(如果存在 o.w)。加载普通图片很有帮助...
例子:
#import "UIImage+MSImageNamed568hSupport.h"
.
.
IBimgViewBG.image=[UIImage ms_imageNamed568hSupport:[NSString stringWithFormat:@"sample.png"]];
.
.
注意:在你的项目中包含这些图片
sample.png // for earlier versions
sample-568h.png // for iphone5
【讨论】:
伙计,你基本上和我在下面展示的一样。前两行代码是“const CGSize screenSize = [UIScreen mainScreen].bounds.size; const CGFloat screenHeight = MAX(screenSize.width, screenSize.height);”可以给我一个 1 :(以上是关于iPhone - iPhone5 对现有应用程序的支持?的主要内容,如果未能解决你的问题,请参考以下文章
如何使应用程序的设计与 iPhone4/iPhone5/iPad 兼容?有啥捷径吗?
企业分发在 iPhone 4 上“无法下载应用程序”但在 iPhone5 上有效
iTunes Connect 上传应用程序仅适用于 4 英寸(iPhone 5、iPhone 5s)