繁体   English   中英

iOS UIPageControl左右点击时更改行为

[英]iOS UIPageControl change behavior when tap left and right

我正在使用默认的UIPageControl UIPageViewController是通过编程创建的。 dataSourcedelegate方法也已正确配置。

我正在尝试实现与iOS主页中相同的行为。

右击应转到下一页。 轻按一下即可转到上一页。

这些行为是默认行为。 一切正常, 除了在最后一页上轻按时,它会转到第一页。 即无限循环。 相同的首页和左键,它需要到最后一页。

我已经阻止了viewControllerBeforeviewControllerAfter方法中的无限循环以进行滑动手势。

func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController?

func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController?

发现:

  • 点击右侧的最后一页时,调用viewControllerBefore
  • 点击左侧的第一页时,调用viewControllerAfter

反正有处理这种情况吗? 我在iOS主屏幕中看到了预期的行为。

当页面的索引为0n - 1时,只需以上述方法返回nil 其中n是总页数。

例:

func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {

    // Check if index is zero, then return nil   
}

func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
        // Check if index is equal to total page count, then return nil   
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM