Swift UIPageViewController禁用第一个和最后一个控制器的ScrollView跳动属性似乎是越野车

问题描述

我有一个类继承UIPageViewController,该类包含4个视图控制器。

我试图弄清楚为什么下面的代码在尝试停止UIPageViewController的第一个和最后一个控制器上的弹跳效果时会随机阻止UIPageViewController滚动?

如果您跟踪currentIndex,那么下面的内容就足够了,但是它有点bug,因为在随机情况下,它会完全停止滚动并停留在随机视图控制器上。

我认为scrollView.bounces有点bug,也许我错过了一些东西,因为在大多数情况下它都能正常工作,如果任何人都可以根据以下内容提供解决方案,那就太好了。

public func scrollViewDidScroll(_ scrollView: UIScrollView) {
    scrollView.bounces = currentIndex == 0 ||
        currentIndex == controllers.count - 1
        ? false 
        : true
}

我设法使此问题起作用,但是我遇到的问题是试图弄清楚如何滚动到下一个控制器的一半。

UIPageViewController - Detect scrolling halfway into the next view controller to change button color?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)