4

在未针对 iphone 6 进行优化的应用程序中,标准显示模式键盘和状态栏显示缩放。这会导致我手动布局的自定义键盘扩展显示为拉伸。如何检测这种缩放以修复布局?

4

2 回答 2

3

使用self.view.frame.size.width它返回 320 用于缩放模式和 414 用于我的 6+(希望也是 6)的常规模式- (void)updateViewConstraints

于 2015-01-27T10:33:29.403 回答
0

最终你将不需要这样做,因为 whatsapp 和其他应用程序得到更新(我相信 whatsapp 刚刚做了),但我暂时解决它的方法是通过获取我正在绘制键盘视图的视图的大小。

CGRect screenRect = [[UIScreen mainScreen] bounds];
CGFloat screenWidth = screenRect.size.width;

iPhone 6 和 6+ 会告诉您屏幕宽度为 320(纵向)和 568(横向),就像 iPhone 5 一样。然后您可以使用与 iPhone 5 相同的绘图。

当应用程序针对 iPhone 6 和 6+ 进行优化时,您将获得它们的真实测量结果。

我不明白的是,为什么人们在我的答案正确时会否决我的答案。我们必须专门处理这个问题。当您的扩展程序运行的应用程序未针对 iPhone 6 进行优化时,尺寸与以前的 iPhone 相同,并且应用程序放大到全屏。只需在 iPhone 6 上运行一个从未更新过的旧应用程序,然后亲自查看。

于 2014-11-19T03:05:03.463 回答