欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SwiftUI之NavigationView用法

程序员文章站 2024-03-24 13:12:52
...

NavigationView是SwiftUI应用程序最重要的组件之一,它使我们能够轻松推送和弹出屏幕,以清晰,分层的方式向用户展示信息。NavigationView一般用在页面的最外层。可以在其内部添加标题栏,页面内容,以及底部导航栏等等。
我们可以很方便的使用NavigationView来为页面添加标题栏,假设这个页面内容只有一个“Hell World”,那么我们可以这样为页面中添加标题栏

NavigationView {
    Text("Hello, World!")
        .navigationBarTitle("我是导航栏标题")
}

您可以通过添加displayMode参数来自定义标题的样式,有下面这三种样式:

  1. large选项显示大标题,这对于导航堆栈中的*视图很有用。
  2. inline选项显示小标题,这对于导航堆栈中的辅助视图,第三视图或后续视图很有用。
  3. automatic选项是默认选项,它使用以前使用的任何视图。
    一般我们常用的是 inline样式:
.navigationBarTitle("Navigation", displayMode: .inline)

如果想在标题栏中添加按钮,可以使用navigationBarItems方法,navigationBarItems方法有两个参数leading和trailing,分别可以在标题栏的左边和右边添加AnyView。

Text("Hello, World!")
    .navigationBarTitle("我是导航栏标题")
    .navigationBarItems(
        leading:
            Button("按钮1") {
                self.score -= 1
            },
        trailing:
        Text("按钮2")
    )

也可以在同一则添加多个不同的View

Text("Hello, World!")
    .navigationBarTitle("我是导航栏标题")
    .navigationBarItems(
        leading:
             HStack {
                   Button("按钮1") {
                       self.score -= 1
                   }
                  Text("按钮2")
           }
    )
``
相关标签: ios swift ios