Kir*_*llC 25 xcode uinavigationbar uinavigationcontroller ios swift
我很确定这不是重复的,因为我查看了其他答案,它们都过时了,并没有提供确切的答案.
我有导航控制器和几个视图控制器.我想让导航栏更高一些,所以它适合我需要的文本大小.我怎样才能做到这一点 ?
我试过这个:UINavigationBar.appearance().frame = CGRect(x:0.0,y:0.0,width:320.0,height:210.0)但没有任何反应......
此外,我无法使用Xcode布局按钮向导航栏添加任何约束.
希望有人可以帮我解决这个问题.提前致谢!
Fra*_*kie 32
这是一种方法:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
let height: CGFloat = 50 //whatever height you want to add to the existing height
let bounds = self.navigationController!.navigationBar.bounds
self.navigationController?.navigationBar.frame = CGRect(x: 0, y: 0, width: bounds.width, height: bounds.height + height)
}
Run Code Online (Sandbox Code Playgroud)
您可以在扩展UINavigationController的类中编写此代码
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
let height = CGFloat(72)
navigationBar.frame = CGRect(x: 0, y: 0, width: view.frame.width, height: height)
}
Run Code Online (Sandbox Code Playgroud)
小智 8
您可以基于UINavigationBar
这样创建一个类
class TTNavigationBar: UINavigationBar {
override func sizeThatFits(_ size: CGSize) -> CGSize {
return CGSize(width: UIScreen.main.bounds.width, height: 55)
}
}
Run Code Online (Sandbox Code Playgroud)
并将其添加到您的NavigationController.
归档时间: |
|
查看次数: |
55231 次 |
最近记录: |