NHBarScrollTool 1.1.5

NHBarScrollTool 1.1.5

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最新发布2018年8月

neghaonenhall维护。



  • 作者:
  • nennhall

导航栏、工具栏一键跟随 tableview 滚动控制显示和隐藏

使用方法:

简书:tableView 上下滑动,隐藏导航栏、工具栏

将相关类拖入工程(如下所示):

您也可以使用 Cocoapod 管理: pod "NHBarScrollTool"

  1. 添加 NHBarScrollTool 的代理对象,它是一个数组,可以添加多个对象,所有被添加的对象都可以接收到 scrollView 的代理方法

    barScrollTool.delegateTargets = @[ self ];

  2. 将 tableView 的代理设置为:

    self.tableView.delegate = self.barScrollTool;

  3. 设置 barScrollTool 的代理:

    _barScrollTool.delegateTargets = ...

scroll.gif

@interface UIViewController ()
@property (weak, nonatomic) IBOutlet UITableView *tableView;
@property (nonatomic, strong) NHBarScrollTool *barScrollTool;
@end

- (void)viewDidLoad {
    [super viewDidLoad];
    [self setupTableView];
}

- (void)setupTableView {
    self.tableView.dataSource = self;
    self.tableView.delegate = self.barScrollTool;
}

- (void)viewDidLayoutSubviews {
    [super viewDidLayoutSubviews];
    //如果是使用autolayout、mansory布局,需要在`viewDidLayoutSubviews`函数中调用此更新约束
    [self.barScrollTool updateConstraints];
}

- (NHBarScrollTool *)barScrollTool {
    if (!_barScrollTool) {
        UINavigationBar *navB = self.navigationController.navigationBar;
        UITabBar *tabB = self.tabBarController.tabBar;
        _barScrollTool = [NHBarScrollTool barToolWithController:self
                                                     scrollView:_tableView
                                                  navigationBar:navB
                                                         tabBar:tabB];
        _barScrollTool.delegateTargets = @[ self ];
        //中间按钮凸出部份的高度(如果有)
        _barScrollTool.tabBarBulgeOffset = 20;
    }
    return _barScrollTool;
}



比较忙,没写太详细,关键代码中有注释,欢迎使用。