在我的applicationDidFinishLaunching中,我设置了一个UINavigationController:
- (void)applicationDidFinishLaunching:(UIApplication *)application {
navController = [[UINavigationController alloc] init];
[[navController navigationBar] setFrame:CGRectMake(0.0,0.0,320.0,20.0)];
...
}正如您所看到的,我正在尝试将导航控制器的高度设置为20px。然而,这是不起作用的。我想setFrame一定是正确的函数,但我没有在正确的位置调用它。我意识到SO上的其他问题和我的类似,但我认为如果navigationBar响应setFrame...right,那么设置它的高度应该是可能的。
另外,有人知道navigationBar的默认高度吗?
谢谢!
发布于 2010-03-14 06:30:59
导航栏的默认高度为44px。
我不确定您是否应该尝试直接调整导航栏的大小,文档肯定不鼓励这样做:
当与导航控制器结合使用时,只能对导航栏进行少量的直接自定义。具体地说,可以修改此类的barStyle、tintColor和半透明属性,但绝不能直接更改as视图级属性,如帧、边界、alpha或隐藏属性。
根据您想要做的事情,在导航栏上方/下方放置一个新的UIView可能会更容易。
发布于 2010-03-14 06:30:45
导航栏的默认高度是44像素。如果您想要更改它,可以尝试向方法中添加一个类别并覆盖setFrame: UINavigationBar。
https://stackoverflow.com/questions/2440238
复制相似问题