iOS 26: Toolbar button background flashes black during NavigationStack transitions (dark mode)

I’m seeing a visual glitch with toolbar buttons when building with Xcode 26 for iOS 26.

During transitions (both pushing in a NavigationStack and presenting a .sheet with its own NavigationStack), the toolbar button briefly flashes the wrong background colour (black in dark mode, white in light mode) before animating to the correct Liquid Glass appearance.

This happens even in a minimal example and only seems to affect system toolbar buttons. A custom view with .glassEffect() doesn’t have the issue. I’ve tried: .tint(...), UINavigationBarAppearance/UIToolbarAppearance, and setting backgrounds on hosting/nav/window but none of those made any difference.

Here’s a minimal reproducible example:

import SwiftUI

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

    var body: some View {
        NavigationStack {
            List {
                NavigationLink("Push (same stack — morphs)") {
                    DetailView()
                }
                Button("Sheet (separate stack — flashes)") {
                    showingSheet = true
                }
            }
            .navigationTitle("Root")
            .scrollContentBackground(.hidden)
            .background(.gray)
            .toolbar {
                ToolbarItem(placement: .topBarTrailing) {
                    Button("Action") {}
                }
            }
            .sheet(isPresented: $showingSheet) {
                SheetView()
            }
        }
    }
}

struct DetailView: View {
    var body: some View {
        Text("Detail (same stack)")
            .frame(maxWidth: .infinity, maxHeight: .infinity)
            .background(.gray)
            .navigationTitle("Detail")
            .toolbar {
                ToolbarItem(placement: .topBarTrailing) {
                    Button("Action") {}
                }
            }
    }
}

struct SheetView: View {
    var body: some View {
        NavigationStack {
            Text("Sheet (separate stack)")
                .frame(maxWidth: .infinity, maxHeight: .infinity)
                .background(.gray)
                .navigationTitle("Sheet")
                .toolbar {
                    ToolbarItem(placement: .topBarTrailing) {
                        Button("Action") {}
                    }
                }
        }
    }
}

Has anyone else seen this or found a workaround outside of disabling this background completely with .sharedBackgroundVisibility(.hidden)?


I have filed a bug report under FB22141183

iOS 26: Toolbar button background flashes black during NavigationStack transitions (dark mode)
 
 
Q