ios - 如何通过单击按钮在 Swift UI 中从一个 View 导航到另一个 View

标签 ios swiftui swift5

我想通过单击按钮在 SwiftUI 中从一个 View 推送到另一个 View 。同样,我们在 Storyboard中从一个 Controller 导航到另一个 Controller 。

但是在SwiftUI中如何实现呢。

最佳答案

可以通过NavigationLink解决

什么是 NavigationLink?

NavigationLink:在每个单元格的右侧创建一个按钮并触发显示到详细 View

苹果链接: https://developer.apple.com/documentation/swiftui/navigationlink

示例项目

苹果 https://developer.apple.com/tutorials/swiftui/building-lists-and-navigation

Github https://github.com/appbrewery/H4X0R-News-iOS13-SwiftUI-Completed

如何实现:

import SwiftUI

struct LandmarkList: View {
    var body: some View {
        NavigationView {
            List(landmarkData) { landmark in
                NavigationLink(destination: LandmarkDetail(landmark: landmark)) {
                    LandmarkRow(landmark: landmark)
                }
            }
            .navigationBarTitle(Text("Landmarks"))
        }
    }
}

*注意:“LandmarkDetail”是您的目标 View 。

你也可以从apple(上面提到的链接)下载sample project,看得清楚

关于ios - 如何通过单击按钮在 Swift UI 中从一个 View 导航到另一个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58968032/

相关文章:

ios - 在 swift 5 中隐藏或禁用 uidocumentinteractioncontroller 的共享按钮

ios - Swift 中的@dynamicCallable 是什么?

ios - 使用 UIBezierPath 的平行四边形 View

ios - UICollectionView 显示存储在文档目录中的图像

ios - 如何使用 SwiftUI 沿圆形路径绘制文本

mkmapview - 在 SwiftUI 中为 MKMapView 添加 "show user location"按钮的正确方法是什么?

SwiftUI 更改 macOS 的文本大小

ios - 无法验证 Facebook publish_actions 权限

ios - Xcode 6.1.11 - 存档应用程序没有图标

state - 如何在 SwiftUI 的 init 函数中初始化 @State 变量?