iPhone 应用在 iPad 上的 iOS 6 系统上出现初始无响应问题。

5

我有一个iPhone应用程序,在iPhone(已在iOS 6和iOS 5上测试)和运行iOS 5的iPad上运行良好。然而,在iOS 6 iPad上,该应用程序最初是无响应的,直到从1x模式调整为2x模式(或反之亦然),或者更改方向。

这似乎是操作系统中的一个错误,因为应用程序不应该能够对1x或2x模式的更改做出反应,但这仍然令人困惑。有任何想法吗?


2
你不应该一开始就怀疑操作系统/编译器/链接器中存在错误,仅因为事情的表现很奇怪。在所有情况中,99.9%的问题都存在于你自己有缺陷的代码中,并且根据操作系统/硬件平台反应异常。...只是这样说。 - Till
我同意,这就是为什么它让人困惑的原因。在运行iOS 6的iPhone上它可以正常工作(这是一个iOS应用程序),但在运行iOS 6的iPad上却无响应,直到触发了无法检测到的事件。在另一台运行iOS 5的iPad上它可以正常工作。 - rdasxy
2个回答

9

我在我的应用程序中也遇到了这个问题。我找到了一个解决方案:在Xcode项目->目标->摘要中,向下滚动到“状态栏”,选中“可见性”中的复选框,“应用程序启动时隐藏”。完成此操作后,iPhone应用程序在iPad iOS 6上再次正常工作。

您可能会注意到,在更改后状态栏被隐藏了。您可以使用以下代码重新启用它: [application setStatusBarHidden:NO withAnimation:UIStatusBarAnimationSlide];


1
PaiGow的修复方法对我很有效,但在iPad Retina模拟器上,使用iOS 6时,固定在屏幕顶部的视图会向上移动到状态栏空间,并被虚拟状态栏裁剪,而不是像iPhone“显示”在iPad上使用的那样。
相反,我没有选中“应用程序启动时隐藏”,但仍然使用了以下代码行:
[application setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];

在我的应用程序委托的applicationDidBecomeActive调用中。

只需调用setStatusBarHidden:withAnimation:就足以使应用程序在模拟器和实际设备上恢复响应,并且我没有看到任何视觉副作用。

我还尝试将调用放入application:didFinishLaunchingWithOptions:中,在模拟器中可以工作;尚未从我的iPad测试人员那里收到反馈,是否在硬件上同样有效。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接