SwiftUI控件NavigationStack进阶
在SwiftUI中,如果我们想要给app添加一个到导航栏,可以使用NavigationStack控件,需要注意的是NavigationStack是iOS 16之后增加的,旨在替代原来的NavigationView,所以如果你的app 运行在iOS 16之前的版本需要使用NavigationView。
在之前的文章中,我们已经接受了NavigationStack的基本使用,接下来我们将主要介绍NavigationStack自定义,即自定义导航栏样式。
初始项目代码如下:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23struct ContentView: View {
var books: [String] = ["三国演义","水浒传", "红楼梦", "西游记"]
var body: some View {
NavigationStack {
List(books, id: \.self) { book in
NavigationLink {
DetailContentView(book: book)
} label: {
Text(book)
.bold()
}
}
.navigationTitle("四大名著")
}
}
}
struct DetailContentView: View {
var book: String
var body: some View {
Text(book)
}
}



