NavigationStack back button ignores tint when presented in sheet

[Also submitted as FB21536505]

When presenting a NavigationStack inside a .sheet, applying .tint(Color) does not affect the system back button on pushed destinations. The sheet’s close button adopts the tint, but the back chevron remains the default system color.

REPRO

  1. Create a new iOS project and replace ContentView.swift with the code below.

—or—

  1. Present a .sheet containing a NavigationStack.
  2. Apply .tint(.red) to the NavigationStack or sheet content.
  3. Push a destination using NavigationLink.

EXPECTED

The back button chevron adopts the provided tint color, consistent with other toolbar buttons and UIKit navigation behavior.

ACTUAL

The back button chevron remains the default system color.

NOTES

Reproduces consistently on:

  • iOS 26.2 (23C54)
  • iOS 26.3 (23D5089e)

SCREEN RECORDING

SAMPLE CODE

import SwiftUI

struct ContentView: View {
    @State private var isSheetPresented = false

    var body: some View {
        Button("Open Settings Sheet") {
            isSheetPresented = true
        }
        .sheet(isPresented: $isSheetPresented) {
            NavigationStack {
                List {
                    NavigationLink("Push Detail") {
                        DetailView()
                    }
                }
                .navigationTitle("Settings")
                .navigationBarTitleDisplayMode(.inline)
                .toolbar {
                    ToolbarItem(placement: .automatic) {
                        Button("Close", systemImage: "xmark") {
                            isSheetPresented = false
                        }
                    }
                }
            }
            .tint(.red)
        }
    }
}

private struct DetailView: View {
    var body: some View {
        List {
            Text("Detail View")
        }
        .navigationTitle("Detail")
        .navigationBarTitleDisplayMode(.inline)
    }
}

Thanks for filling the Feedback report. As a workaround you could use navigationBarBackButtonHidden to hide the back button and replace that with a custom back button you manage in the toolbar. The custom button would get the tint applied to it.

@DTS Engineer Thanks for the suggestion. I did try hiding the system back button and replacing it with a custom toolbar button. However, that disables the left-edge swipe gesture, which felt like a worse tradeoff. Most people expect swipe-to-go-back, so a mismatched toolbar button seemed like the lesser issue.

Unless there’s a way to preserve the swipe gesture while using a custom back button, I’ll just hope for a fix.

NavigationStack back button ignores tint when presented in sheet
 
 
Q