【发布时间】:2012-06-20 14:46:45
【问题描述】:
好的,所以我有一个 UINavigationController,我正在我的 viewDidLoad 中设置它的框架。
[self.navigationController.navigationBar setFrame:CGRectMake(0, 0, 586, 44)];
加载视图后,NavigationController 仍处于其全宽 1024。
当视图出现时:
直到我在导航控制器上push 某些东西才会将其框架更新为586。
推送或弹出后:
注意:调用[... setNeedsDisplay]; 并不能解决问题,[... setAutoresizingMask:UIViewAutoresizingNone]; 也一样
对于为什么最初不是这样或如何重绘它有什么想法吗?
【问题讨论】:
-
您是否尝试在 viewWillAppear: 中调整其大小而不是 viewDidLoad?
-
@KevinHorgan — 不幸的是,我已经尝试过这种方法。好像没用。
-
首先,您实际上重新调整了导航控制器导航栏框架的大小,而不是控制器本身。我认为您可能想要调整导航控制器视图的大小。
标签: iphone ios ipad uinavigationcontroller uinavigationbar