【问题标题】:iPhone 5 code migrationiPhone 5 代码迁移
【发布时间】:2013-05-23 10:11:26
【问题描述】:

我有一个为 iPhone 4s 及以下屏幕分辨率编写的应用程序。现在我想将它迁移到 iPhone 5 的屏幕分辨率。我在网上阅读了很多答案,现在我对程序已经很清楚了。

我想知道是否需要最新版本的 Xcode 才能执行此迁移。据我所知,我可以使用 Xcode 4.2 本身完成所有程序,但大多数答案建议我需要下载最新的 Xcode。如果真的需要,请告诉我这背后的原因。

【问题讨论】:

    标签: xcode xcode4.5 iphone-5


    【解决方案1】:

    是的,您将需要 iOS 6 SDK,因此任何随 iOS 6 SDK 提供的 Xcode 版本都可以。

    到目前为止,Apple 甚至不会接受任何与 4 英寸屏幕不兼容的应用程序。这意味着您将需要使用 iOS 6 SDK。

    【讨论】:

    • 谢谢@rckoenes。但我仍然没有得到这背后的原因。如果只是添加 Default@2x-586h.png 文件,我可以用 XCode 4.2 本身来做吗?
    • 否,因为只有 iOS 6.0 SDK 支持 4" iOS 设备。Apple 不允许您提交任何 SDK 低于 6.0 且具有 Default@2x-586h.png 的应用程序。您仍然可以定位带有最新 iOS SDK 的 iOS 4.3。
    • 好的。这回答了我的全部问题。谢谢。
    【解决方案2】:

    您需要 XCode 4.5 (iOS SDK 6) 或更高版本才能支持 iPhone 5。 这是因为 iPhone 5 支持是通过在应用程序项目中添加 Default@2x-586h.png 启动图像来实现的。只有 XCode 4.5/iOS SDK 6 及更高版本会检测到此文件并正确启用 iPhone 5 支持。

    【讨论】:

      【解决方案3】:

      从 5 月 1 日开始,提交到 App Store 的新应用和应用更新必须为配备 Retina 显示屏的 iOS 设备构建,iPhone 应用还必须支持 iPhone 5 上的 4 英寸显示屏。查看 iOS 人机界面指南,了解如何准备您的应用程序。

      Apple: News And Announcements

      【讨论】:

        【解决方案4】:

        这取决于您要如何设计屏幕。

        简单的解决方案就是在bundle的根目录下添加一个Default@2x-586h.png,当应用在iPhone 5上运行时,它会尝试以全屏模式运行。

        我认为即使在 xcode 4.2 中也是可能的。而且,在最坏的情况下,您可能需要以编程方式设计所有 UIView。我自己没有尝试过,因为我使用的是最新的 xcode,但如果你有旧的 xcode,你可以试一试。对于我的一个应用程序,当我使用这个 png 文件时,所有屏幕都可以很好地适应 iPhone 5 屏幕。

        但是,如果您想拥有自动布局等所有高级功能并使用 xib 或故事板设计屏幕,那么您需要最新的 xcode 和 sdks。要求,

        故事板 -> iOS 5 sdk 和 Xcode 4.2

        自动布局 -> iOS 6 sdk 和 Xcode 4.5

        【讨论】:

        • 您能否详细说明以下语句 - “这甚至可以在 xcode 4.2 中完成。而且,在这种情况下,您可能需要以编程方式设计所有 UIViews”。如果我使用 Xcode 4.2,我不太明白为什么需要以编程方式设计所有视图。
        • 如果您在视图控制器中有常用的 UIView 并将该视图设置为 self.view,通常它的属性设置为自动调整高度和宽度,并且适用于 iPhone5。但是,如果您在一个 xib 文件中设计多个 UIView,您可能需要在 iPhone 4 (320x480)、iPhone 5 (320x568) 和 iPad (768x1024) 的单独 xib 文件中设计 UIView,如果您支持的话。有时最好在 loadView() 方法中设计简单的视图,而不是使用 3 个 xib/storyboard 文件。这也是一种维护隐患。
        猜你喜欢
        • 1970-01-01
        • 2011-02-09
        • 1970-01-01
        • 2013-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-01
        • 1970-01-01
        相关资源
        最近更新 更多