是否可以抓住transitionCoordinator
的{{1}}?
每次我尝试得到它UIPageViewController
。它甚至使用一个吗?
如果没有,是否有一种非黑客的方式来回应页面之间滚动的进度?
(hacky =迭代子视图以获得滚动视图并成为滚动视图委托。这不是理想的,因为nil
使用滚动视图执行了#34; 1}} 1} p>
由于
答案 0 :(得分:4)
经过多年的试验,我从未发现UIPageViewController的transitionCoordinator
不是nil
的情况。
而且,正如Fogmeister在这个原始问题和评论中指出的那样,因此也没有很好的方法来跟踪页面视图控制器滚动动画并与其协调。
我的解决方案是滚动我自己的页面滚动视图,该页面滚动视图执行UIPageViewController的操作,即它在此页面之前和之后预加载页面视图,但不预加载其他页面视图,从而节省了内存。现在我们有了一个普通的滚动视图,我们可以充当它的委托,并且我们可以做任何与滚动有关的事情。
这并不那么困难,事实上,这是我们在有UIPageViewController之前曾经做过的事情(是的,我还记得那些日子)。
Apple甚至提供了有关如何执行此操作的示例:https://developer.apple.com/library/archive/samplecode/PageControl/Introduction/Intro.html