我能够使用.navigationBarTitle(Text((msgDetails.name)))添加标题,但我想在导航栏中的标题下方添加字幕。看起来标题将不接受视图,而仅接受文本。我在标题中尝试了\ n,但无法正常工作。有什么办法可以在导航栏中添加字幕。我使用前导和尾随在导航栏中添加了左右按钮。我想显示标题和副标题以及此左右按钮
答案 0 :(得分:2)
如果您查看SwiftUI documentation
,则只会看到navigationBarTitle
函数的一些重载。它们都需要特殊的参数,例如Text
或StringProtocol
。因此,您不能只将一些View
放入导航栏中。
我可以提出一个奇怪但可行的版本。这是关于使用.navigationBarItems(leading:...
的知识-它需要一些视图,您可以自定义(在合理的情况下)。这是简单的示例:
struct ContentView: View {
var body: some View {
NavigationView {
Text("Main view")
.navigationBarItems(leading:
HStack {
Button(action: {}) {
Image(systemName: "return")
}
VStack {
Text("Title")
.bold()
.font(.system(size: 30))
Text("Subtitle")
.italic()
.font(.system(size: 15))
}
.padding(.horizontal, 100) // mb it's better to use GeometryReader for centering
})
}
}
}
您将实现以下目标: