【发布时间】:2015-09-04 09:01:45
【问题描述】:
我对 UINavigationController 进行了子类化,并在 UINavigationBar 下方添加了一个自定义子视图。我在viewDidLayoutSubviews() 方法中更新了我的子视图的位置。但是,当我将 viewController 添加到 navigationController 时,使用此方法,viewController 的视图将隐藏在我的自定义子视图后面。 我应该如何添加子视图,这样它才不会覆盖我的 viewController 的视图?
override func viewDidLoad() {
self.view.addSubview(tabView)
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
tabView.frame = CGRect(x: 0, y: self.navigationBar.frame.origin.y + self.navigationBar.frame.height, width: self.view.frame.size.width, height: 40.0)
navigationViewHeight = tabView.frame.origin.y + tabView.frame.size.height
}
【问题讨论】:
-
您是否有理由不将导航控制器嵌入到 UITabBarController 中?走这条路将确保您“免费”获得所有这些功能。
-
@WayneHartman 因为我想让标签栏位于屏幕顶部并自定义其外观。 Haven 确实研究过这种可能性,但我使用 UITabBarController 的经验是,自定义非常痛苦。
标签: ios iphone uiview uinavigationcontroller