cyn*_*six 4 paging ios uipageviewcontroller
我需要将UIView覆盖在UIPageViewController上,希望它可以让我关闭clipsToBounds,然后将交互式边界区域的大小调整为较小的高度,并在非交互式/非剪切区域的顶部放置另一个视图。
不幸的是,UIPageViewController会以某种方式调整childViewController的大小,无论如何都会对其进行裁剪。
我想要的是这样的:

我该如何实现?我找不到执行此操作的示例,并且确实尝试使用UICollectionViewController代替分页,但是它没有页面之间的平滑间隙,就像UIPageViewController一样。
以下在 Swift 中对我有用:
pageViewController.clipsToBounds = false
pageViewController.view.clipsToBounds = false
for view in pageViewController.view.subviews {
view.clipsToBounds = false
}
Run Code Online (Sandbox Code Playgroud)
类似于 Vitaly 的回答,但使用循环来确保所有子视图都得到处理。
小智 5
UIPageViewController的视图在childViewController的实际视图之前的子视图层次结构中具有另一个UIView(更确切地说是_UIQueuingScrollView)。因此,要禁用clipsToBounds,您应该执行以下操作:
UIPageViewController *pageViewController = ...;
pageViewController.view.clipsToBounds = NO;
[[pageViewController.view subviews].firstObject setClipsToBounds:NO];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1057 次 |
| 最近记录: |