Ios SwiftUI在后退按钮上显示导航栏标题,但不在上一视图中显示
我有两种观点,一种通向另一种。我希望第二个视图使用第一个视图的标题作为后退按钮,它应该是:“您还需要为目标视图创建自定义后退按钮,并且您不应该为Ios SwiftUI在后退按钮上显示导航栏标题,但不在上一视图中显示,ios,swift,swiftui,Ios,Swift,Swiftui,我有两种观点,一种通向另一种。我希望第二个视图使用第一个视图的标题作为后退按钮,它应该是:“您还需要为目标视图创建自定义后退按钮,并且您不应该为导航链接设置导航标题,这就是为什么您无法正确隐藏“View1” 检查下面的代码 import SwiftUI struct Test: View { @State var isLinkActive = false var body: some View { NavigationView {
导航链接设置导航标题,这就是为什么您无法正确隐藏“View1”
检查下面的代码
import SwiftUI
struct Test: View {
@State var isLinkActive = false
var body: some View {
NavigationView {
VStack {
NavigationLink("go to the second view", destination: SecondView()
.navigationBarBackButtonHidden(true)
.navigationBarItems(leading: Button(action: {
isLinkActive = false
}, label: {
HStack{
Image(systemName: "backward.frame.fill")
Text("View1")
}
})) ,
isActive: $isLinkActive)
}.navigationBarItems(leading: Button(action: {
()
}, label: {
Text("custom button")
}))
}.navigationViewStyle(StackNavigationViewStyle())
}
private func btnPressed() {
isLinkActive = true
}
}
struct SecondView: View {
var body: some View {
Color.blue
}
}
您可以尝试将navigationBar
代码作为可重用组件,因为您可能需要在多个位置执行此操作
输出-:
这是否回答了您的问题?@Asperi但这会隐藏导航栏,因此我的自定义按钮(这是一个navigationBarItem)将不可见?我需要显示此自定义按钮我喜欢这种方法,但不幸的是,它不会导致有系统图标,因此它将与我的应用程序的其余部分不一致。我可能需要搜索正确的资源和文本的正确字体,这已经使它更像是一种解决方法,而不是实际的so粘液
import SwiftUI
struct Test: View {
@State var isLinkActive = false
var body: some View {
NavigationView {
VStack {
NavigationLink("go to the second view", destination: SecondView()
.navigationBarBackButtonHidden(true)
.navigationBarItems(leading: Button(action: {
isLinkActive = false
}, label: {
HStack{
Image(systemName: "backward.frame.fill")
Text("View1")
}
})) ,
isActive: $isLinkActive)
}.navigationBarItems(leading: Button(action: {
()
}, label: {
Text("custom button")
}))
}.navigationViewStyle(StackNavigationViewStyle())
}
private func btnPressed() {
isLinkActive = true
}
}
struct SecondView: View {
var body: some View {
Color.blue
}
}