如何使用SwiftUI在列表中滑动以编辑动作?

cza*_*ter 8 xcode ios swift swiftui

我正在尝试使用SwiftUI实现滑动以编辑动作。删除动作和移动动作都可以很好地工作,但是我不知道如何启用滑动来编辑动作。

当用户将激活滑动以进行编辑操作时,我想打开编辑屏幕。

这是我的代码:

struct TableView : View {
@State var dataSource = DataSource()

var body: some View {
        NavigationView {
            List {
                ForEach(dataSource.pokemons.identified(by: \.id)) { pokemon in
                    Text(pokemon.name) 
                }
                .onDelete(perform: deletePokemon)
                .onMove(perform: movePokemon)
            }
            .navigationBarItems(leading: EditButton(), trailing: Button(action: addPokemon, label: { Text("Add") }))
            .navigationBarTitle(Text("Pokemons"))
        }
}
Run Code Online (Sandbox Code Playgroud)

Mec*_*cid 0

您必须使用 EditButton() 来代替。它启用列表组件的编辑模式。

  • 我知道如何启用编辑模式并且它工作得很好,但我想再次启用滑动来删除/编辑手势,这对我不起作用。就像默认邮件应用程序中的内容一样,您只需滑动电子邮件并将其标记为已读或删除即可。 (3认同)