SwiftUI - 导航栏后退按钮
SwiftUI - navigationBarBackButton
- 如何更改
SwiftUI
中的 navigationBarBackButton
颜色? (经过
默认为蓝色)
- 如何更改
SwiftUI
中的 navigationBarBackButton
文本?
这是我的代码(示例):
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"))
}
}
}
默认情况下,"ExerciseDetailView" 中的 navigationBarBackButton
文本为 Exercise,颜色为 blue。
我的问题是如何操作这两个?
这是一个解决方案。希望它会有所帮助。这样,你也可以使用自定义的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"))
}
}
目前,没有可用的直接方法(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"))
}
}
}
- 如何更改
SwiftUI
中的navigationBarBackButton
颜色? (经过 默认为蓝色) - 如何更改
SwiftUI
中的navigationBarBackButton
文本?
这是我的代码(示例):
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"))
}
}
}
默认情况下,"ExerciseDetailView" 中的 navigationBarBackButton
文本为 Exercise,颜色为 blue。
我的问题是如何操作这两个?
这是一个解决方案。希望它会有所帮助。这样,你也可以使用自定义的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"))
}
}
目前,没有可用的直接方法(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"))
}
}
}