簡體   English   中英

SwiftUI - 有沒有辦法在沒有 NavigationView 的情況下構建動態列表視圖?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM