ios – UIPageViewController:子控制器在滚动期间忽略状态栏高度

我在使用UIPageViewController时遇到了一些麻烦.如果我滚动到新页面,则在滚动时新的视图控制器位于状态栏的后面.滚动后,视图控制器将自身置于状态栏下方.

我正在使用Storyboard(通用). UIPageViewController具有属性Extend Edges:在Top Bars下.我错过了什么?

>将automaticAdjustsScrollViewInsets设置为false无法正常工作
>使用edgesForExtendedLayout = UIRectEdge.None也不起作用
>在这里发现了一些未解决的问题,但没有答案(link)

UPDATE

跳跃的另一个原因是来自“约束”(found here)的“边缘”.如果使用约束,请确保取消选中边距(右对话框).您可以稍后在“实用程序”中将其删除(左侧对话框).检查两个连接的视图!

解决方法

我刚刚找到了可能的解决方案:

在我的例子中,UIPageViewController容器的超级视图的Top Space为0.
superview是包含状态栏的根容器.

我将Top Space的值更改为20,高于状态栏.现在它不会移动状态栏下方的视图,因为它们已经存在.

希望有所帮助!

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...