使用 SwiftUI 如何更改导航栏的标题大小?在标准标题或大标题之间进行选择。
SwiftUI(iOS 14+)
NavigationView {
TopLevelView {
// […]
}
.navigationBarTitleDisplayMode(.inline) // ⬅️ Important part
}
SwiftUI(Xcode 11.3)
SwiftUI navigationBarTitle
修饰符有一个可选的displayMode
您可以设置的属性.inline
对于小标题和.large
对于大标题。查看文档 https://developer.apple.com/documentation/swiftui/navigationbaritem/titledisplaymode
NavigationView {
TopLevelView {
// […]
}
.navigationBarTitle("Test", displayMode: .inline) // ⬅️ Important part
}
在 UIKit 中是如何完成的
从 iOS 11 开始,UINavigationBar
可以以标准和大标题模式显示其标题。
On UIKit,如果你想在两种行为之间进行选择,你必须设置largeTitleDisplayMode
你的ViewController的属性navigationItem
决定这个特定的视图控制器是否应该显示大标题。
然后,您需要检查prefersLargeTitle
您的导航控制器的属性navigationBar
。将其设置为true
将允许其导航堆栈中的 ViewController 显示大标题。相反,将其设置为false
将阻止它,覆盖堆栈中存在的各个导航项的首选项。
这将在 UIKit 中显示一个大标题
// Set this property to true to allow NavigationItems to display large titles
let navigationController = UINavigationController()
navigationController.navigationBar.prefersLargeTitles = true
/*
Choose between `always`, `never` and `automatic` to decide
if this particular view controller should display a large title.
*/
let viewController = UIViewController()
viewController.navigationItem.largeTitleDisplayMode = .always
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)