Если вы посмотрите на 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
})
}
}
}
, и вы получите что-то вроде этого:
![enter image description here](https://i.stack.imgur.com/g7JTT.png)