簡體   English   中英

如何更改 SwiftUI 中推送視圖的導航欄色調顏色?

[英]How to change navigation bar tint color for pushed view in SwiftUI?

[找到 1 個解決方案! ] 感謝喬治的評論,我能夠找到一個解決方案https://stackoverflow.com/a/70353393/882987但如果有人有任何其他解決方案,請隨時寫它:)

我在SwiftUI中為“推送”視圖設置自定義導航欄色調時遇到了一些問題。

代碼是這樣的,有一堆項目並點擊每個項目,我們顯示/推送一些細節視圖:

NavigationView {
        ScrollView {
            LazyVStack(alignment: .leading) {
                ForEach(items) { item in
                    NavigationLink(destination: DetailItemView(item))) {
                        ListItemView(item)
                    }
                }
            }
        }
    }

而且我想為每個被推送的視圖設置不同的導航欄色調。

有沒有辦法做到這一點?

感謝 George 的評論,我能夠使用基本的Binding找到解決方案。

視圖 A 中,我添加了:

@State private var navColor = Color.primary

我添加了修飾符

NavigationView {
...
}
.accentColor(navColor)

視圖 B中,我添加了:

@Binding var navColor: Color

所以我可以在視圖 B 中將navColor屬性更改為我想要的任何東西,它會更新accentColor (以及導航欄的色調顏色)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM