7

我正在尝试更新一个应用程序以添加对 iPhone 5 的支持。根据我看到的其他线程,我已经添加了Default-568h@2x.png指定的内容,并且我已经向应用程序添加了一些大小合适的新背景图像。问题是我的应用程序的底部似乎没有响应触摸(我有一个页面控件和一个信息按钮)。

此外,在切换屏幕时(使用以下代码):

[self presentModalViewController:tableNavController animated:YES];

屏幕底部变黑。这个黑色的部分基本上正是我无法触及的地方。此问题的屏幕截图如下:

黑条截图

关于为什么会发生这种情况的任何想法?为什么我无法访问此底部?请注意,如果我运行常规的 iPhone 4S 或 iPad 模拟器,则不会发生这种情况。我可以访问屏幕的整个部分。

编辑:可能是模拟器问题吗?我还没有实体 iPhone 5,因此无法在真实设备上进行测试。

Auto-LayoutEdit2:我已经尝试在视图和应用程序主窗口上启用和禁用。如果我将以下日志语句添加到 viewDidLoad:

NSLog(@"Window is: %0.0fx%0.0f", window.frame.size.width, window.frame.size.height);
NSLog(@"View is: %0.0fx%0.0f", viewController.view.frame.size.width, viewController.view.frame.size.height);

我收到Window is: 320x480. View is: 320x548。所以看起来这可能是我的窗口有问题。我会继续调查。

4

4 回答 4

5

这可以通过在窗口上启用“启动时全屏”来解决。删除和重新创建仅能实现这一点。

于 2012-10-08T16:51:51.007 回答
5

弄清楚了。尽管视图是,但主窗口没有调整大小。我从我的 xib 中删除了该窗口,创建了一个新窗口并重新链接它。这解决了这个问题。

于 2012-10-01T18:47:52.243 回答
4

一个更简单的解决方案是选择窗口并切换到属性检查器。将大小更改为Retina 4 全屏

于 2012-10-12T03:49:17.900 回答
0

一个更简单的解决方案是选择窗口并切换到属性检查器。将大小更改为 Retina 4 全屏。

大多数情况下,史蒂文的回答是正确的。但是,现在您的窗口比 3.5 英寸设备上的屏幕大,而 4 英寸设备上的大小合适。基本上,如果您以后有任何引用该窗口的内容,则必须在运行时调整窗口大小,否则将返回 4" 窗口。

例如,如果您在代码中使用它 [[[UIApplication sharedApplication] delegate] window]

请注意这一点,据说它适用于大多数应用程序。

于 2012-11-03T20:18:15.370 回答