我有一个UIPageViewController
并通过遵守UIScrollViewDelegate
for subView in self.pageVC.view.subviews {
if let subView = subView as? UIScrollView {
subView.delegate = self
}
}
我有一个指示器(蓝色的下部),我想将其滑动到pageviewcontroller,如图所示。
但是当我打印偏移值时,得到奇怪的结果,当我停止滚动时。
偏移值随我滚动而增加,而当我停止时,它始终为414.0。
func scrollViewDidScroll(_ scrollView: UIScrollView) {
debugPrint("offset : \(scrollView.contentOffset.x)")
let x = (1/3) * (scrollView.contentOffset.x) - 1
debugPrint("X val :\(x)")
}
日志:
“ X值:274.777777777778”
“偏移量:827.666666666667”
“ X值:274.888888888889”
“偏移量:828.0”
“ X值:275.0”
“偏移量:414.0”
“ X值:137.0”
我在做什么错?
最佳答案
试试这个代码
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let point = scrollView.contentOffset
let percentComplete = fabs(point.x - self.view.frame.size.width)/self.view.frame.size.width
print("percentComplete: \(percentComplete)")
}