自动隐藏UINavigationBar和UIToolbar
问题描述:
我有一个基于导航控制器的iPhone应用程序。自动隐藏UINavigationBar和UIToolbar
我有一个显示的文章列表的主视图控制器,以及一个详细视图,在这里你可以看到一个UIWebView
一文。对于详细视图,我在顶部有一个导航栏,底部有一个UIToolbar
。
我想用幻灯片动画(顶部和底部)为自动隐藏,并点击屏幕时恢复它们。我认为这将是一个标准功能,但无法找到如何去做。
作为参考,这是Stanza或NYT应用程序所做的。
答
设置运行此上的敲击事件的方法:
if (![navigationController isNavigationBarHidden])
[navigationController setNavigationBarHidden:YES animated:YES]; // hides
else
[navigationController setNavigationBarHidden:NO animated:YES]; // shows
至于UIToolbar
,它是一个UIView
子类,所以你应该能够很容易地建立一个custom animation在滑动此并在视线之外。
答
试试这个:
BOOL hide = ![self.navigationController isNavigationBarHidden];
[self.navigationController setNavigationBarHidden:hide animated:YES];
答
还为UIViewController中相当有用的方法。
- (BOOL) hidesBottomBarWhenPushed {
//hide a toolbar or whatever
return NO;
}
答
我想最近你可以使用self.navigationController.hidesBarsOnTap = true;