滚动时暂时隐藏工具栏

Posted

技术标签:

【中文标题】滚动时暂时隐藏工具栏【英文标题】:Hiding Toolbar temporarily while scrolling 【发布时间】:2013-03-10 11:07:42 【问题描述】:

我有一个UITableView 和一个UINavigationController+UIToolbar

我想在用户滚动表格时隐藏工具栏。 我使用这个隐藏工具栏:

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView

    [self.navigationController setToolbarHidden:YES animated:YES];

在表格停止滚动后再次显示工具栏:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

    [self.navigationController setToolbarHidden:NO animated:YES];

如果我让桌子自行减速,这会很好。但是,如果通过触摸表格来停止滚动,这将不起作用。

我应该使用另一个特定的委托函数吗?

编辑: 我也试过方法:

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView

没有区别。

【问题讨论】:

尝试在– scrollViewDidEndDragging:willDecelerate:– scrollViewWillEndDragging:withVelocity:targetContentOffset:这个方法中显示工具栏,他们应该可以解决问题 – scrollViewDidEndDragging:willDecelerate: 做到了! 【参考方案1】:

使用UIScrollViewDelegate 协议中的此方法。

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate

【讨论】:

以上是关于滚动时暂时隐藏工具栏的主要内容,如果未能解决你的问题,请参考以下文章

滚动选项卡中的片段时隐藏/显示工具栏

CollapsingToolbarLayout 并在滚动时隐藏工具栏

android棒棒糖工具栏:滚动时如何隐藏/显示工具栏?

如何在 Webview 中向下滚动时隐藏操作栏/工具栏

RecycleView 如何在滚动时隐藏显示顶视图(不是工具栏)

如何隐藏导航栏+工具栏并在滚动时更改tableView高度