zoukankan      html  css  js  c++  java
  • iOS UIScrollView 上下滑动导航栏渐变或隐藏

    导航栏颜色渐变或者设置隐藏

    1.系统导航

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView
    {
        //scrollView已经有拖拽手势,直接拿到scrollView的拖拽手势
        UIPanGestureRecognizer *pan = scrollView.panGestureRecognizer;
        //获取到拖拽的速度 >0 向下拖动 <0 向上拖动
        CGFloat velocity = [pan velocityInView:scrollView].y;
        
        if (velocity <- 5) {
            //向上拖动,隐藏导航栏
            [self.navigationController setNavigationBarHidden:YES animated:YES];
        }else if (velocity > 5) {
            //向下拖动,显示导航栏
            [self.navigationController setNavigationBarHidden:NO animated:YES];
        }else if(velocity == 0){
            //停止拖拽
        }
    }

    2.自定义导航

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView
    {
        //scrollView已经有拖拽手势,直接拿到scrollView的拖拽手势
        UIPanGestureRecognizer *pan = scrollView.panGestureRecognizer;
        //获取到拖拽的速度 >0 向下拖动 <0 向上拖动
        CGFloat velocity = [pan velocityInView:scrollView].y;
        //NSLog(@"velocity = %.f scrollView =%.f",velocity,scrollView.contentOffset.y);
        if (velocity <- 10) {
            //向上拖动,隐藏导航栏
            //self.hkNavView.backgroundColor = kRedColor;
            self.hkNavView.hidden = YES;
        }else if (velocity > 10) {
            //向下拖动,显示导航栏
            self.hkNavView.hidden = NO;
            //self.hkNavView.backgroundColor = kBlueColor;
        }
        //CGFloat alpha =(scrollView.contentOffset.y )/(70*gScale);
        //self.hkNavView.backgroundColor = [HKHexColor(0xFF55c9c4) colorWithAlphaComponent:alpha];
    }
  • 相关阅读:
    HTML5手机APP开发入(5)
    HTML5手机APP开发入(4)
    HTML5手机APP开发入(3)
    HTML5手机APP开发入门(2)
    五一干货来袭!开源Moon.Orm标准版发布!
    你不知道的HttpHandler相关知识
    我们就专心做一件事情---数据处理框架
    jQuery Mobile案例,最近用Moon.Web和Moon.Orm做了一套系统
    谈谈字符编码的问题
    一起玩玩面试题(第一关)---五道题估计你要挂四道
  • 原文地址:https://www.cnblogs.com/StevenHuSir/p/iOS_CustomNav_Hidden.html
Copyright © 2011-2022 走看看