向SwiftUI navigationBarTitle添加点击手势?

向SwiftUI navigationBarTitle添加点击手势?,swiftui,Swiftui,我需要能够添加一个点击手势识别器的导航栏标题。但这在SwiftUI中似乎不受支持?是否有任何解决办法,其他人是否设法做到了这一点 请注意,是否不能将自定义视图显示为导航栏标题?现在我只能使用文本视图,而不能使用图像(或带有手势修改器的文本视图)。这不是很优雅,但使用了一个navigationBarItems()工具 它不是很优雅,但使用了一个navigationBarItems()工具 我确实喜欢这个 struct TestView: View { @State static var titl

我需要能够添加一个点击手势识别器的导航栏标题。但这在SwiftUI中似乎不受支持?是否有任何解决办法,其他人是否设法做到了这一点


请注意,是否不能将自定义视图显示为导航栏标题?现在我只能使用文本视图,而不能使用图像(或带有手势修改器的文本视图)。

这不是很优雅,但使用了一个navigationBarItems()工具


它不是很优雅,但使用了一个navigationBarItems()工具

我确实喜欢这个

struct TestView: View {
 @State static var title = "Some title text"
 @State static var profileImage = "person.crop"
 @State static var action : Int = 0
 ... 
 var body: some View {
    NavigationView {
    ...


    .navigationBarItems(leading: TitleLabel(title: TestView.$title), trailing: ProfileButton(imageName: TestView.$profileImage, action: TestView.$action))
    .navigationBarTitle(Text(""), displayMode: .inline)
   }
}
}

我确实喜欢这个

struct TestView: View {
 @State static var title = "Some title text"
 @State static var profileImage = "person.crop"
 @State static var action : Int = 0
 ... 
 var body: some View {
    NavigationView {
    ...


    .navigationBarItems(leading: TitleLabel(title: TestView.$title), trailing: ProfileButton(imageName: TestView.$profileImage, action: TestView.$action))
    .navigationBarTitle(Text(""), displayMode: .inline)
   }
}
}


派对已经很晚了,但我发现了一个适用于iOS 14+的

.toolbar {
        ToolbarItem(placement: .principal) {
            VStack {
                Text("Title").font(.headline)
                Text("Subtitle").font(.subheadline)
            }
        }
    }

感谢这篇博文的作者,他为我节省了一些进一步的挖掘工作。

派对很晚了,但我发现了一个适用于iOS 14+的工具

.toolbar {
        ToolbarItem(placement: .principal) {
            VStack {
                Text("Title").font(.headline)
                Text("Subtitle").font(.subheadline)
            }
        }
    }

这篇博文的作者帮了我更多的忙。

谢谢,但这取代了后退按钮,如果你把自己的后退按钮放在那里,也会使中心对齐混乱。这对我来说不是一个好的解决方案:(谢谢,但这取代了后退按钮,如果你把自己的后退按钮放在那里,也会弄乱中心对齐。这对我来说不是一个好的解决方案:(