84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
如题iOS 中navigationbar的高度可以修改吗?
光阴似箭催人老,日月如移越少年。
答案是可以修改的。
修改前:
修改后:
你新建一个工程,将UIWindow的rootViewController设置为一个UINavigationController的实列,然后自定义一个控制器CustomVC,在CustomVC中写如下代码:
- (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; NSLog(@"修改前"); [self printViewHierarchy:self.navigationController.navigationBar]; //修改NavigaionBar的高度 self.navigationController.navigationBar.frame = CGRectMake(0, 20, 320, 100); NSLog(@"\n修改后"); [self printViewHierarchy:self.navigationController.navigationBar]; } - (void)printViewHierarchy:(UIView *)superView { static uint level = 0; for(uint i = 0; i < level; i++){ printf("\t"); } const char *className = NSStringFromClass([superView class]).UTF8String; const char *frame = NSStringFromCGRect(superView.frame).UTF8String; printf("%s:%s\n", className, frame); ++level; for(UIView *view in superView.subviews){ [self printViewHierarchy:view]; } --level; }
输出结果:
UINavigationBar:{{0, 20}, {320, 44}} _UINavigationBarBackground:{{0, 0}, {320, 44}} UIImageView:{{0, 44}, {320, 3}} UINavigationItemView:{{160, 22}, {0, 0}} 2013-10-29 20:24:36.900 Nav[8957:907] 修改后 UINavigationBar:{{0, 20}, {320, 100}} _UINavigationBarBackground:{{0, 0}, {320, 100}} UIImageView:{{0, 100}, {320, 3}} UINavigationItemView:{{160, 22}, {0, 0}}
可以看到UINaigationBar的高度已经从44变到了100. 如果还有疑问,请追问。没有的话,请采纳,谢谢!
为什么我的不改变,我使用的是 ios9 xcode7
答案是可以修改的。
修改前:
![](http://img.php.cn/upload/image/000/000/000/7247a964dad9b42cf7847085f147d1d5-0.jpg)
修改后:
![](http://img.php.cn/upload/image/000/000/000/7247a964dad9b42cf7847085f147d1d5-1.jpg)
你新建一个工程,将UIWindow的rootViewController设置为一个UINavigationController的实列,然后自定义一个控制器CustomVC,在CustomVC中写如下代码:
输出结果:
可以看到UINaigationBar的高度已经从44变到了100. 如果还有疑问,请追问。没有的话,请采纳,谢谢!
为什么我的不改变,我使用的是 ios9 xcode7