如何隐藏导航栏+工具栏并在滚动时更改tableView高度
Posted
技术标签:
【中文标题】如何隐藏导航栏+工具栏并在滚动时更改tableView高度【英文标题】:how to hide navigation bar + toolbar and change tableView height on scroll 【发布时间】:2016-06-19 20:39:59 【问题描述】:我在导航控制器中嵌入了一个视图控制器,其下方附加了一个工具栏,因此它具有以下样式:
正如你在我的故事板中看到的那样,我还有一个容器视图,里面有一个 tableviewcontroller:
在滚动时,我需要隐藏我已经能够做到的导航栏。问题是,我还必须隐藏导航栏下方的工具栏以及扩展表格视图的高度,以便当导航栏和工具栏都消失时,表格视图可以使用额外的空间。
【问题讨论】:
请发布一些代码,而不仅仅是图片。您还尝试过什么? 您是否有理由为您的 tableView 使用容器视图,而不仅仅是让您的主视图控制器符合UITableViewDataSource
和 UITableViewDelegate
?我认为这可能只是你的问题。
【参考方案1】:
我没有完美的答案,但请尝试在cellForRowAtIndexPath
中使用以下代码
会帮你的。。
你没有提到你的代码是在客观的 C/Swift 中。我为你提供了两个::
Obj-C
[[self navigationController] setNavigationBarHidden:YES animated:YES];
斯威夫特
self.navigationController().setNavigationBarHidden(true, animated: true)
对于tabBar,如果你想用navigationBar隐藏tabBar就用这个东西..
或者用这个来隐藏tabBar >
DetailViewController *detailViewController = [[DetailViewController alloc] init];
detailViewController.hidesBottomBarWhenPushed = YES;
[[self navigationController] pushViewController:detailViewController animated:YES];
[detailViewController release];
【讨论】:
以上是关于如何隐藏导航栏+工具栏并在滚动时更改tableView高度的主要内容,如果未能解决你的问题,请参考以下文章