【问题标题】:iPhone 5 not displaying app properlyiPhone 5 无法正确显示应用程序
【发布时间】:2012-09-13 12:30:04
【问题描述】:

我正在 iPhone 5 模拟器上测试一些旧应用程序。大多数应用都能正常显示,即显示居中,保持原来的 iPhone 外观,顶部和底部有空白。

我的一个应用表现不同。它将启动图像(一个旧的 2:3 宽高比的启动图像)拉伸到 iPhone 5 模拟器从上到下的全高。然后它将应用程序捕捉到窗口顶部,而不是居中。

我怀疑这与自动布局有关,但据我所知,作为这个概念的新手,它已被禁用。当我在文件检查器中检查时,未选择“使用自动布局”。

有什么想法吗?感谢阅读!

【问题讨论】:

    标签: iphone ios-simulator ios6 autolayout


    【解决方案1】:

    从项目中删除 Default-568h@2x.png 应该可以解决问题。似乎有几个人在使用 Xcode 自动创建此启动图像时遇到了问题。

    【讨论】:

    • 谢谢!我确实有那个形象。我想我实际上可能在实验时自己创造了这个,不确定。我刚刚删除了它,但我得到了相同的结果,但我认为你让我走上了正确的轨道。
    • 删除Default-568h@2x.png文件后记得从iPhone/模拟器中删除应用。直到我最终删除应用程序并重建它,它才对我有用。
    【解决方案2】:

    根据我的经验,当您在 XCode 4.5 中打开一个项目时,它会自动为每个视图添加一个标志,上面写着“自动调整子视图大小”,默认情况下设置为 true。当我为所有视图禁用此标志时,它们不再伸展。不过有趣的是,我没有在模拟器中得到信箱,而是在底部得到一个白色条带。

    【讨论】:

      【解决方案3】:

      我最终手动设置了 iPhone 5 的视图,因为我无法找到或解决问题。专门为 iPhone 5 设置视图相对容易,但令人沮丧的是不知道为什么在这种情况下需要这样做。

      我使用此堆栈溢出答案中的以下代码检测到 iPhone 5:How to detect iPhone 5 (widescreen devices)?

      #define IS_IPHONE_5 ( [ [ UIScreen mainScreen ] bounds ].size.height > 500)
      
      if (IS_IPHONE_5 ) {
          //set up views
      }
      

      【讨论】:

      • 您可能需要在其中添加一个 iPad 检查,以防万一您在通用应用程序中使用它。按照目前的构造,它会在任何 iPad 上返回 true。
      【解决方案4】:

      从项目中删除 Default-568h@2x.png,此外,您必须手动从模拟器中删除该应用程序,然后才能从 Xcode 再次运行它。看起来 ios6 为已安装的应用程序保存了某种标志,使其认为应该拉伸它。

      【讨论】:

        【解决方案5】:

        简单地删除 Default-568h@2x.png 并没有解决我的问题。 首先我删除了这个文件,然后我将一个 640x1136 的图像拖到 Xcode 中“iPhone 部署信息”部分的“启动图像 - 视网膜(4 英寸)”。

        【讨论】:

          【解决方案6】:

          在 iOS 7 Sdk 中,如果您没有在项目中添加启动图像,您需要 将启动图像(640 X 1136 和 640 X 960)添加到您的项目中,然后转到“常规”选项卡并设置两个启动图像(Retina,Retina 4 英寸)然后从模拟器中删除应用程序并再次运行应该可以解决问题

          【讨论】:

            猜你喜欢
            • 2012-06-10
            • 1970-01-01
            • 1970-01-01
            • 2013-10-11
            • 2018-02-24
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2021-06-15
            相关资源
            最近更新 更多