小编mih*_*ema的帖子

工作表在 SwiftUI 中显示多次

简短描述:在详细视图中,我有一个相关实体的列表。对于每个项目,都有一个按钮可打开该项目的编辑表。

List {
  if (book.booksBorrowers != nil) {
    ForEach (Array(book.booksBorrowers! as! Set<Borrowers>), id: \.self) { borrower in
      HStack {
        Text(borrower.firstName ?? "unbekannter Vorname")
        Text(borrower.lastName ?? "unbekannter Nachname")
        Text(String(format: "%.0f", borrower.age))
        Spacer()
        Button {
          showingBorrowerEditScreen.toggle()
        } label: {
          Image(systemName: "pencil")
            .frame(width: 20.0, height: 20.0)
        }.multilineTextAlignment(.center).buttonStyle(.borderless)
          .sheet(isPresented: $showingBorrowerEditScreen) {
          EditBorrowerView(
            aBorrower: borrower,
            firstName: borrower.firstName!,
            lastName: borrower.lastName!,
            age: Int(borrower.age)
            
          ).environment(\.managedObjectContext, self.viewContext)
        }
      }
    }.onDelete(perform: deleteBorrower)
  }
}.listStyle(.inset(alternatesRowBackgrounds: true))
Run Code Online (Sandbox Code Playgroud)

单击列表中的某个编辑按钮后,会出现一张带有编辑表单的工作表,其中预填充了所选列表项的值。

struct EditBorrowerView: View {
  @Environment(\.managedObjectContext) var moc
  @Environment(\.dismiss) var dismiss
  
  @State private var firstName …
Run Code Online (Sandbox Code Playgroud)

swift swiftui swiftui-list swiftui-sheet

3
推荐指数
1
解决办法
844
查看次数

标签 统计

swift ×1

swiftui ×1

swiftui-list ×1

swiftui-sheet ×1