iPhone6(无显示缩放模式)UIMenuController被截断

时间:2014-10-22 11:31:19

标签: ios iphone uimenucontroller iphone-6

当我使用标准显示模式且设备处于横向模式时,我的iPhone 6上的UIMenuController出现问题。在iPhone 6 Plus上,两种模式都存在问题。也许这取决于屏幕分辨率。

在这种情况下,UIMenuController将被左侧和/或右侧截断。似乎UIMenuController可以具有最大界限,就像手机处于纵向模式一样。

请参阅UIMenuController截断(iPhone6横向原理图): http://imageshack.com/a/img631/8470/ozlaGe.jpg“iPhone6风景”

对我来说,这似乎是iOS8 + iPhone 6的错误。代码没有改变很长时间并且有效。 在缩放显示模式下,UIMenuController将正确显示,就像所有其他iPhone / iPad上一样。 iOS7。

... define UIMenuItems....
[self becomeFirstResponder]; // canBecomeFirstResponder returns YES;
UIMenuController *menu = [UIMenuController sharedMenuController];
[menu setMenuItems:items];

.. define frame...
[menu setTargetRect:frame inView:self];
[menu setMenuVisible:YES animated:YES];

修正:请参阅Iliya Barenboim的评论

2 个答案:

答案 0 :(得分:3)

原因是你没有iPhone 6和iPhone 6+的发布图像。

添加启动映像时遇到的另一件事是,使用资产目录执行此操作时存在错误。我在我的项目中添加了静态启动图像,并按照此处的说明手动编辑了我的info.plist:https://stackoverflow.com/a/25960203/378179

答案 1 :(得分:0)

这不是编译问题。我在Xcode 6.1中的iPhone 5 iOS 7.1模拟器上运行相同的代码,问题不会出现 - 只有当你使用iPhone 6 / iOS 8模拟器运行时(当然,在iPhone 6设备上运行)本身)。因此,iOS 8 [.1]运行时存在问题。