navigationBarBackButton中更改SwiftUI颜色?(默认情况下是蓝色的)navigationBarBackButton中更改SwiftUI文本这是我的代码(一个例子):
struct ExercisesList : View {
var exercises : [Exercise]
var body: some View {
NavigationView {
List(self.exercises.identified(by: \.number)) {exercise in
NavigationLink(destination: ExerciseDetailView(exercise: exercise)) {
ExerciseRow(exercisE: exercise)
}
}
.navigationBarTitle(Text("Exercises"))
}
}
}默认情况下,“navigationBarBackButton”中的ExerciseDetailView有一个练习的文本和蓝色的颜色。
我的问题是我怎样才能操纵这两个?
发布于 2019-07-10 06:51:26
这里有一个解决办法。希望能帮上忙。这样,您也可以使用自定义UIColor。
struct ExercisesList : View {
var exercises : [Exercise]
var body: some View {
UINavigationBar.appearance().tintColor = UIColor.red
return NavigationView {
List(self.exercises.identified(by: \.number)) { exercise in
NavigationLink(destination: ExerciseDetailView(exercise: exercise)) {
ExerciseRow(exercisE: exercise)
}
}
}
.navigationBarTitle(Text("Exercises"))
}
}发布于 2019-07-10 07:23:18
目前,还没有直接的方法(XCode 11 beta 3)。但是您可以使用UINavigationBar方法,
见下文代码:
struct ExercisesList : View {
var exercises : [Exercise]
init() {
//navigationBarBackButton color will change//
UINavigationBar.appearance().tintColor = .purple
// you can also set backgroundColor//
UINavigationBar.appearance().backgroundColor = .white
}
var body: some View {
NavigationView {
List(self.exercises.identified(by: \.number)) {exercise in
NavigationLink(destination: ExerciseDetailView(exercise: exercise)) {
ExerciseRow(exercisE: exercise)
}
}
.navigationBarTitle(Text("Exercises"))
}
}
}https://stackoverflow.com/questions/56963957
复制相似问题