美文网首页
SwiftUI—如何删除List列表里的记录

SwiftUI—如何删除List列表里的记录

作者: anny_4243 | 来源:发表于2020-07-15 19:20 被阅读0次

    原文链接:https://github.com/fzhlee/SwiftUI-Guide#-%E7%AC%AC7%E8%8A%82list-delete-

    本节课演示如何配合NavigationView,删除List列表里的元素。

    示例代码:

    struct ContentView : View {
    
            @State var languages = ["Objective-C", "Swift", "Flutter"]
    
            var body: some View {
                NavigationView {
                    List {
                        ForEach(languages,id: \.self) { language in
                            Text(language)
                        }
                        .onDelete(perform: delete) //添加对onDelete方法的响应,当列表里的记录被删除时,执行delete方法,该方法将在下面的代码中实现
                    }
                    .navigationBarItems(trailing: EditButton())
                }
            }
    
            func delete(at offsets: IndexSet) {
                if let first = offsets.first { //获得索引集合里的第一个元素,然后从数组里删除对应索引的元素
                    languages.remove(at: first)
                }
            }
        }
    

    相关文章

      网友评论

          本文标题:SwiftUI—如何删除List列表里的记录

          本文链接:https://www.haomeiwen.com/subject/zimjhktx.html