UITableVIew和UIScrollView滚动冲突

  • 开发过程中,一个页面经常会兼具TableView和ScrollView,但是有些时候会发现两者在滑动时会产生一些冲突导致一些莫名其妙的bug,颇为苦恼。
  • TableView和ScrollView发生冲突的原因:
    UItableVIew是继承自UIScrollView类的,它可以响应父类scrollView的方法,当然包括代理方法。由此TableView在滚动的时候可能会触发ScrollView的代理方法,bug。
  • 解决方法:
    可以在ScrollView的代理方法中做一下类名判断就欧克了。

例如

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
    if ([scrollView isKindOfClass:[UIScrollView class]]) {
        NSLog(@"ScrollView在滚动");
    }else if ([scrollView isKindOfClass:[UITableView class]]) {
        NSLog(@"TableView在滚动");
    }
}

好啦,小伙伴们尽情的滚动吧 .

点我 , 点我

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容