在Scrollview滚动时检测不是tableview滚动

时间:2016-09-03 09:37:20

标签: ios swift uiscrollview

我在tableview(tableview的标题)中有一个scrollview,我想在滚动完成时调用此动作:

func scrollViewDidEndDecelerating(scrollView: UIScrollView) {

    let pageNumber = round(bookScrollView.contentOffset.x / bookScrollView.frame.size.width)
    pageControl.currentPage = Int(pageNumber)

    print("scroll")
}

当我滚动bookScrollView时没有任何反应,但是当表视图滚动时这个函数运行。

我如何检测bookScrollView何时滚动并运行功能?

感谢

1 个答案:

答案 0 :(得分:5)

在这里,您可以定义scrollOfTable,也可以定义TAG属性。识别并仅在滚动视图进入时滚动,而不是在tableview中滚动。

如果您的scrollView正在设置委托

,您还需要检查
self.vsScrollView.delegate = self

func scrollViewDidEndDecelerating(scrollView: UIScrollView) {
    if scrollView == scrollOfTable {

    }
    else if scrollView == scrollOfScrollView {

    }
    else {
        //something else
    }

}