iPhone 5无法正常显示应用程序

时间:2012-09-21 05:00:21

标签: iphone ios-simulator ios6 autolayout

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

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

我怀疑这与自动布局有关,但据我所知,对这个概念不熟悉,它被禁用了。当我检查文件检查器并且未选择“使用自动布局”时。

有什么想法?谢谢你的阅读!

6 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:1)

根据我的经验,看起来当你在XCode 4.5中打开一个项目时,它会自动为每个视图添加一个标记,说“Autoresize subviews”,默认情况下设置为true。当我为所有视图禁用此标志时,它们不再拉伸。有趣的是,我没有在模拟器中获得信箱,而是在底部获得一个白色条带。

答案 2 :(得分:0)

我最终手动设置了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
}

答案 3 :(得分:0)

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

答案 4 :(得分:0)

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

答案 5 :(得分:0)

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