美文网首页iOS优秀开发文章
iOS 关于ScrollerView 嵌套TableView、S

iOS 关于ScrollerView 嵌套TableView、S

作者: 红凉梦 | 来源:发表于2019-11-22 18:30 被阅读0次

1.ScrollView 嵌套ScrollerView

首先我们要知道这个代理方法,因为相关的判断就是在这里面是写的

-(void)scrollViewDidScroll:(UIScrollView *)scrollView

具体实现

1.首先你要知道你需求是什么,比如第二个subScrollerView是要在界面滑到一定程度的时候居顶,然后实现第二个subScrollerView中的内容滚动事件
2.计算mainScrollerView滚动到一定程度的的高度- viewHeight
3.设置临界点的时候,mainScrollerView的ContentOffset和scrollEnabled ,和subScrollerView的scrollEnabled
代码如下

#pragma mark - UIScrollViewDelegate
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
     NSLog(@"scrollView=====滚动==%.2F========",scrollView.contentOffset.y);

    if (scrollView == self.bgViewScrollView) {
        CGFloat offset = scrollView.contentOffset.y;
        if (Scale(220) - offset == 0) {
            NSLog(@"==========到家啦========");
            [self.bgViewScrollView setContentOffset:CGPointMake(0, Scale(220))];
            self.bgViewScrollView.scrollEnabled = NO;
        } else if (offset == 0) {
            self.bgViewScrollView.scrollEnabled = YES;

        }else if(offset < 0){
            self.bgViewScrollView.scrollEnabled = NO;
        }
    }
    
}

ScrollView 嵌套TableView

和第一个思路一致,不过在实现代理的时候,要注意是否 scrollerView == tableview,然后进行相关判断
如果需要同时识别多个手势 需要实现代理

/**
 同时识别多个手势

 @param gestureRecognizer gestureRecognizer description
 @param otherGestureRecognizer otherGestureRecognizer description
 @return return value description
 */
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
    return YES;
}

相关文章

网友评论

    本文标题:iOS 关于ScrollerView 嵌套TableView、S

    本文链接:https://www.haomeiwen.com/subject/zebqwctx.html