在我的项目中,我有带有相关输入键盘的textViews,在iOS6下的iPhone 6 Plus上的横向模式下具有奇怪的外观,如下所示:
它有时在内部有不同的方向。
但在某些情况下,键盘旋转正常但在方向更改和其他可见错误时仍有白色间隙:
最后我们有了普通的扩展景观视图:
问题是人们如何能够获得没有错误的扩展键盘,如下所示:
答案 0 :(得分:4)
将项目从xCode5.1
(及更早版本)迁移到xCode6
时,非常重要的事情
是通过添加Info.plist
密钥
Launch screen interface file base name
文件
您可以将事件设置为空字符串(通常是Launch xib
的名称)。如果没有这个简单的线路,将会在上面的屏幕截图中显示所有问题。
缺少Launch screen interface file base name
会导致在兼容模式下使用旧设备的标准分辨率。在每种情况下,让我们在项目中运行以下代码
NSLog(@"bounds = %@", NSStringFromCGRect(UIScreen.mainScreen.bounds));
使用Launch xib
获取
bounds = {{0, 0}, {414, 736}} // for iPhone 6Plus
bounds = {{0, 0}, {375, 667}} // for iPhone 6
没有它就得到
bounds = {{0, 0}, {320, 568}}
所以,最后一种情况确实是兼容模式。
答案 1 :(得分:0)
我发现了同样的问题。当我只允许我的一个视图控制器旋转时。当我进入屏幕时,我正在启用屏幕旋转,当我从屏幕出来时,我正在禁用它。除了键盘UI之外,每件事情都很好。所以我搜索了许多论坛的解决方案,但没有发现任何有用的东西。无论如何,我试图了解模式并发现我使用的是viewDidDisappear而不是viewWillDisappear。
重要的是在它进入另一个屏幕之前禁用方向。希望这有帮助。