iOS开发之 -- 判断tableview/scrollview的滑动方法,及导航栏渐变的实现代码

开发的过程中,肯定会用到在视图想上滑动的时候,在导航处做一些操作,比如向上滑动的时候,做个动画,出现一个搜索框,或者其他的操作,那么我们怎么来判断它的滑动方向呢?

首先我们应该知道tableview继承与UIScrollview,如下图:

那么我们可以使用他的父类的方法,代码如下:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    if (scrollView.contentOffset.y > 0) {
        NSLog(@"向上滚动");
        self.title = @"京杭大运河";
        self.navigationController.navigationBarHidden = YES;
    }else
    {
        NSLog(@"向下滚动");
        self.title = @"清明上河图";
        self.navigationController.navigationBarHidden = NO;
    }
    
    self.oldSet = scrollView.contentOffset.y;//讲当前偏移量变成缓存位移
}
self.oldSet的话,每次记录一个偏移量,可以存储到本地,然后每次进来的时候,就可以让界面处在上一次退出的位置,也可以进行一些其他的操作,想隐藏什么,都可以在这里操作!

导航栏渐变的实现代码,其实很简单:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGFloat minAlphaOffset = -64;//- 64;
    CGFloat maxAlphaOffset = 200;
    CGFloat offset = scrollView.contentOffset.y;
    CGFloat alpha = (offset - minAlphaOffset) / (maxAlphaOffset - minAlphaOffset);
    self.nav.backgroundColor = [[UIColor whiteColor]colorWithAlphaComponent:alpha];
}

实现此代理方法即可,渐变的颜色,可以自己相应调整.



转载于:https://www.cnblogs.com/hero11223/p/6676823.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值