首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >旋转时隐藏导航栏

问旋转时隐藏导航栏
EN

Stack Overflow用户
提问于 2009-01-12 18:16:00
回答 3查看 7.1K关注 0票数 6

我有一台带导航栏的UIView。当用户将iPhone置于横向时,如何隐藏导航栏,并使其在纵向视图中重新显示?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-01-12 19:10:43

这在文档中很容易找到。在UINavigationController文档中,要隐藏导航栏,您可以使用:

代码语言:javascript
复制
- (void)setNavigationBarHidden:(BOOL)hidden animated:(BOOL)animated

如果要在设备旋转时执行此操作,则需要在视图控制器方法中执行此操作(在UIViewController文档中提到):

代码语言:javascript
复制
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
票数 8
EN

Stack Overflow用户

发布于 2010-02-27 21:15:09

代码语言:javascript
复制
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
    [[self navigationController] setNavigationBarHidden:UIInterfaceOrientationIsLandscape(toInterfaceOrientation) animated:YES];
    [[UIApplication sharedApplication] setStatusBarHidden:UIInterfaceOrientationIsLandscape(toInterfaceOrientation) animated:YES];
}
票数 9
EN

Stack Overflow用户

发布于 2009-01-13 21:17:24

一个更好的方式是使用CGAffineTransform,把导航栏留在原处--就像iPhone的相册视图一样。请参阅Jeff Lamarche的优秀介绍Demystifying CGAffineTransform。这对我有很大帮助。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/436413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档