我有一个 UIViewController
,里面有一个 UIView
,我在其中添加一个 UIPageViewController
,其中 UIViewController
作为委托 . 问题是 UIPageViewController
的 UIPageControl
没有按照我预期的点选择工作 .
我期待如果我选择了第4点,它会把我带到第4点,然而,它不会像那样工作 . 如果我选择 UIPageControl
的右半部分(在图像的蓝色方块内),它总是进入下一页,如果我选择 UIPageControl
的左半部分(在图像的红色方块内),则转到上一页 . 因此,如果我在第2页并选择第二个点周围,则转到第1页(而不是停留在第2页)
此外,如果我完全点击其中一个点(任何一个点),点击将被忽略,虽然我不确定它在设备上是如何工作的(因为在设备中更难以完全点击一个点内) .
我的问题:
1 - 忽略正确的点内部行为正常(通过完全在点内,我的意思是不在他们周围)?
2 - 两半选择UIPageController在页面之间移动行为正常吗?
3 - 我怎样才能这样做,如果我按下X点,它会把我带到页面X(而不是当前的两半行为)?
注意:我更喜欢快速
2 回答
我建议你使用外部库,因为这个问题或多或少已经解决了 . 通过子类化本机页面控件来完成这项工作非常复杂,但您可以在某处找到实现 .
这个库完全符合你的要求(跳转到页面):
https://github.com/Spaceman-Labs/SMPageControl
在文档中,查找“直接页面选择”部分
希望能帮助到你!
编辑:需要考虑的更多库:
https://github.com/TanguyAladenise/TAPageControl https://github.com/nicklockwood/FXPageControl(非常广泛,可能太多)
我从未遇到过这个 . 我会说这不正常 . 有些东西可能会超越它 .
是的,这是UIPageController的默认行为 .
我建议不要这样做 . 默认情况下不是这种方式的原因是触摸空间太小(当使用手指而不是鼠标时) . 所以只有前进和后退才有意义 . 如果出于某种原因确实需要,您必须创建一个自定义UIControl才能执行此操作 .