5

我有一个基于导航控制器的 iPhone 应用程序。

我有一个显示文章列表的主视图控制器和一个详细视图,您可以在其中查看UIWebView. 对于详细视图,我在顶部有导航栏,UIToolbar在底部有一个。

我想用幻灯片动画(到顶部和底部)自动隐藏它们,并在点击屏幕时恢复它们。我认为这将是一个标准功能,但找不到如何去做。

作为参考,这就是 Stanza 或 NYT 应用程序所做的。

4

4 回答 4

17

设置一个在点击事件上运行它的方法:

if (![navigationController isNavigationBarHidden])
  [navigationController setNavigationBarHidden:YES animated:YES]; // hides
else
  [navigationController setNavigationBarHidden:NO animated:YES]; // shows

至于UIToolbar,它是一个UIView子类,因此您应该能够非常轻松地设置自定义动画以将其滑入和滑出视线。

于 2009-09-08T20:09:29.893 回答
1

尝试这个:

BOOL hide = ![self.navigationController isNavigationBarHidden];
[self.navigationController setNavigationBarHidden:hide animated:YES];
于 2009-12-13T01:08:16.463 回答
1

UIVIewController 还有一个非常有用的方法。

- (BOOL) hidesBottomBarWhenPushed {
//hide a toolbar or whatever
return NO;
}
于 2010-08-03T08:19:48.897 回答
0

我想最近你可以使用self.navigationController.hidesBarsOnTap = true;

于 2014-11-11T23:20:16.657 回答