![](/img/trans.png)
[英]How to navigate to another view in NavigationView without NavigationButton in SwiftUI?
[英]SwiftUI - Is there any way to build a dynamic list view without NavigationView?
(示例代码已添加)
我正在尝试使用 SwiftUI 来构建一个可选列表,例如 Swift 中的原始 Tableview。
我想在选定项目上的用户选项卡时显示详细视图。 但是,我发现实现它的唯一方法是使用 NavigationView 和 NavigationLink。
有谁知道还有其他方法可以通过 SwiftUI 实现可选列表吗?
下面是我实现的示例:
NavigationView{
List{
ForEach(items, id: \.id){ item in
NavigationLink(destination: WorkItemDetailView(item: item)){
WorkItemListRow(item: item)
}
}
}
}
WorkItemListRow 是在列表的单元格中呈现 object。 WorkItemDetailView 是详细视图,将显示 object 的详细信息。
您还可以使用模态演示:
@State var selectedItem: Item? = nil
var body: some View {
List {
ForEach(items) { item in
WorkItemListRow(item: item)
.onTapGesture {
self.selectedItem = item
}
}
} .sheet(item: $selectedItem,
onDismiss: { self.selectedItem = nil }) { item in
WorkItemDetailView(item: item)
}
}
}
我认为最好提供源代码,无论如何根据您的问题,您已经建立了一个表格视图,但只是想 go 到另一个页面,其中包含表格视图中所选项目的详细信息。
你可以使用这个:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let vc = ViewController()
self.present(vc, animated: true, completion: nil)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.