我正在尝试将导航栏放置在屏幕顶部下方。
我在viewWillAppear
中尝试了以下操作:
self.navigationController.view.frame = CGRectMake(0.0, 54.0, 320.0, 426.0);
self.navigationController.navigationBar.frame = CGRectMake(0.0, 0.0, 320.0, 44.0);
问题是它似乎只在第一次显示 View 时才起作用。如果您转到另一个选项卡并返回,导航栏位于屏幕顶部。当 iPhone 旋转时也会发生这种情况。
我应该尝试调整导航 Controller 框架,还是应该尝试将导航 Controller 添加到屏幕顶部下方的另一个 View ?
最佳答案
虽然晚了,但我希望这仍然可以帮助其他人。我在 viewDidAppear:animated 中使用了 Stephens 代码,导航栏在返回选项卡时保持不变。这允许我在导航栏上方使用 Logo 。我在我的 viewController 中使用了它。
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
self.navigationController.view.frame = CGRectMake(0.0, 100.0, 320.0, 426.0);
self.navigationController.navigationBar.frame = CGRectMake(0.0, 0.0, 320.0, 44.0);
[self loadData];
}
关于iPhone:将 UINavigationBar 向下移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4019619/