码迷,mamicode.com
首页 > 移动开发 > 详细

iOS UITableView表视图滚动隐藏UINavigationController导航栏

时间:2015-07-09 18:05:52      阅读:403      评论:0      收藏:0      [点我收藏+]

标签:uitableview   导航栏   ios   

UITableView 继承于UIScrollView
所以UIScrollView 的代理方法同样适用于UITableView 中
隐藏导航栏的方法为:

self.navigationController.navigationBar.hidden = YES;

所以我们只有通过滚动的代理方法监测滚动视图的滚动方向来控制导航栏显示还是隐藏即可:
通过实现UIScrollView的代理方法来操作:
方式如下:

// 滑动scrollView,并且手指离开时执行。一次有效滑动,只执行一次。
// 当pagingEnabled属性为YES时,不调用,该方法
-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
{

    NSLog(@"%f",velocity.y);
    if (velocity.y > 0.0)
    {
        //向上滑动隐藏导航栏
        self.navigationController.navigationBar.hidden = YES;
    }else
    {
        //向下滑动显示导航栏
        self.navigationController.navigationBar.hidden = NO;
    }
}

如果觉得效果僵硬,可自行加载动画效果!
关于 UIScrollView Delegate 的详解可到此查看: iOS UIScrollViewDelegate详解

版权声明:本文为博主原创文章,未经博主允许不得转载。

iOS UITableView表视图滚动隐藏UINavigationController导航栏

标签:uitableview   导航栏   ios   

原文地址:http://blog.csdn.net/ljh910329/article/details/46818631

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!