Skip to content

Using navigationTransition in conjunction with .toolbar(.hidden, for: .navigationBar) causes the parent view navigation bar to disappear #156

@Yyilin001

Description

@Yyilin001

iphone XS
17.2.1

//
// ContentView.swift
// sdafwerw
//
// Created by Yyl on 2025/8/11.
//

import SwiftUI
import SwiftUINavigationTransitions
struct ContentView: View {
var body: some View {
NavigationStack {
VStack {
NavigationLink {
Test01()
} label: {
Image(systemName: "globe")
.imageScale(.large)
.foregroundStyle(.tint)
}

            Text("Hello, world!")
        }
        .padding()
    }
    .navigationTransition(.slide, interactivity: .edgePan)
}

}

#Preview {
ContentView()
}

struct Test01: View {
var body: some View {
VStack {
NavigationLink {
Test02()
} label: {
Color.red
}
}
.navigationBarTitleDisplayMode(.inline)
.toolbar { createTopTool() }
}

@ToolbarContentBuilder
private func createTopTool() -> some ToolbarContent {
    ToolbarItem(placement: .principal) {
        Text("sdalfkls")
    }
    ToolbarItem(placement: .topBarTrailing) {
        Text("sdaqwqlfkls")
    }
}

}

struct Test02: View {
@Environment(.dismiss) private var dismiss
var body: some View {
VStack {
Color.blue
// .onTapGesture {
// dismiss()
// }
}
.toolbarBackground(.hidden)
.navigationBarBackButtonHidden()
.toolbar(.hidden, for: .navigationBar)
}

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions