Swift 滚动表格视图重置水平滚动视图页面控件
我的应用程序中有一些奇怪的行为。我有一个带有静态单元格的表视图控制器。在其中一个单元格中,我有一个水平滚动视图。滚动视图连接到页面控制器。滚动视图和页面控制器工作正常,但是如果我滚动表格视图,滚动视图页面控制器将重置为第一页 但是,实际的滚动视图内容并非如此,如果我再次滚动滚动视图,页面控制器将跳回上一个位置 我正在使用:Swift 滚动表格视图重置水平滚动视图页面控件,swift,Swift,我的应用程序中有一些奇怪的行为。我有一个带有静态单元格的表视图控制器。在其中一个单元格中,我有一个水平滚动视图。滚动视图连接到页面控制器。滚动视图和页面控制器工作正常,但是如果我滚动表格视图,滚动视图页面控制器将重置为第一页 但是,实际的滚动视图内容并非如此,如果我再次滚动滚动视图,页面控制器将跳回上一个位置 我正在使用: override func scrollViewDidEndDecelerating(scrollView: UIScrollView){ let pageWidth:C
override func scrollViewDidEndDecelerating(scrollView: UIScrollView){
let pageWidth:CGFloat = CGRectGetWidth(scrollView.frame)
let currentPage:CGFloat = floor((scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1
self.pageController.currentPage = Int(currentPage)
}
控制页面控制器的视觉效果
似乎上面的表格视图也在抓取卷轴结束。关于如何停止触发该函数的表视图,有什么建议吗
谢谢您只需检查
滚动视图
是否是您的表视图:
override func scrollViewDidEndDecelerating(scrollView: UIScrollView){
// Add this
if scrollView == self.tableView
{
return;
}
let pageWidth:CGFloat = CGRectGetWidth(scrollView.frame)
let currentPage:CGFloat = floor((scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1
self.pageController.currentPage = Int(currentPage)
}
这可能是一个旧线程,但您并不真正需要tableview引用
if scrollView is UITableView{
return
}
//Do some stuff
@帕克斯:很高兴这有帮助:)