UINavigationController 旋转时在底部留下 12px 的间隙
Posted
技术标签:
【中文标题】UINavigationController 旋转时在底部留下 12px 的间隙【英文标题】:UINavigationController leaves 12px gap at bottom when rotated 【发布时间】:2013-12-02 10:08:45 【问题描述】:我有一个非常简单的应用程序:一个 UIPageViewController
包裹在一个 UINavigationController
中,显示 4 个 UIView
s,带有 4px 红色边框。
过渡样式设置为scroll
,边框为23pt。
问题是,当我将模拟器旋转为横向格式时,底部有一个最初不应该存在的 12pt 间隙。视图应该占据整个屏幕。
当我滚动到下一页时,视图会跳到底部并正确布局。
当我省略导航视图控制器时,一切都正确布局。
在检查视图层次结构时,我看到一个_UIQueuingScrollView
,其边界为
x: 504
y: →12←
width:504 height: 320
我在这里错过了什么?
截图(红色边框应该在底部):
复制:
-
下载 PhotoScroller 示例项目https://developer.apple.com/library/ios/samplecode/PhotoScroller/Introduction/Intro.html
打开主故事板,选择页面视图控制器
编辑器 > 嵌入 > 导航控制器
运行并旋转模拟器
【问题讨论】:
【参考方案1】:它与“调整滚动视图插图”属性有关,您可以在 xib 中打开/关闭。
只需在 Interface Builder 中关闭 Page View Controller 的这个选项,它就会按您的预期工作。
【讨论】:
以上是关于UINavigationController 旋转时在底部留下 12px 的间隙的主要内容,如果未能解决你的问题,请参考以下文章
UINavigationController 工具栏和设备方向(旋转)
UINavigationController 的子视图中调用的旋转方法?
UITabBarController 中的 UINavigationController 在 iOS 6 中不会旋转
UITabBarController/UINavigationController 旋转问题