当前位置:首页 > 操作系统 > Ios

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

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详解

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

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


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!