美文网首页iOSiOS Developer程序员
iOS Demo小合集:仿淘宝上拉进入详情页、系统的图像滤镜使用

iOS Demo小合集:仿淘宝上拉进入详情页、系统的图像滤镜使用

作者: DrunkenMouse | 来源:发表于2016-11-16 18:57 被阅读1143次

目录

  • 仿淘宝上拉进入详情页
  • 系统的图像滤镜使用
  • 万花筒
  • 简单的仿简书个人详情页的上拉菜单
仿淘宝上拉进入详情页

仿淘宝上拉进入详情页git链接
gif:

仿淘宝上拉进入详情页.gif
系统的图像滤镜使用

系统的图像滤镜使用git链接
gif:

系统的图像滤镜使用.gif
万花筒

万花筒git链接
gif:

万花筒.gif
简单的仿简书个人详情页的上拉菜单

gif:


简单的仿简书个人详情页的上拉菜单.gif

因为实在简单,就不上传git了。这里简单说下吧:

   上面一个View,中间一个View,下面一个tableView,都放在一个scrollView上
   通过对tableView的contentOffset监听,如果向下滚动而scrollView没有滚动到midView显示在左上角,就让scrollView去滚动。方法是禁止tableView的滚动与交互。
   通过对scrollView的contentOffset监听,如果scrollView滚动到midView显示在左上角,就让tableView允许交互与滚动。

核心代码:
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context{
    
    //滚动的是tableView而不是scrollView
    if (object == _botTableView) {
        
        CGFloat contentOffsetY = [change[@"new"] CGPointValue].y;
        if (_scrollView.contentOffset.y < _topView.frame.size.height) {
            //禁止tableView滚动与交互
            _botTableView.userInteractionEnabled = NO;
            _botTableView.scrollEnabled = NO;
        }else {
           
            //如果scrollView滚过头了,就重新设置一下偏移值
            if (_scrollView.contentOffset.y > _topView.frame.size.height) {
                [_scrollView setContentOffset:CGPointMake(0, _topView.frame.size.height)];
            }
            //如果tableView上滚到头了还在滚,就让scrollView滚动
            if (_botTableView.contentOffset.y < 0) {
                [_scrollView setContentOffset:CGPointMake(0, contentOffsetY) animated:NO];
            }
        }
        
    }else if (object == _scrollView){
        //如果滚动到midView显示在左上角时,就让tableView去滚动
        if (_scrollView.contentOffset.y >= _topView.frame.size.height) {
            _botTableView.userInteractionEnabled = YES;
            _botTableView.scrollEnabled = YES;
        }
    }
    
    else {
        [super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
    }
} 

相关文章

网友评论

    本文标题:iOS Demo小合集:仿淘宝上拉进入详情页、系统的图像滤镜使用

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