[英]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.