📜  如何从列表中删除 tvos swiftui coredata - Swift (1)

📅  最后修改于: 2023-12-03 15:37:55.689000             🧑  作者: Mango

如何从列表中删除 tvos swiftui coredata

在 tvOS SwiftUI 应用程序中使用 CoreData,你可能会需要从列表中删除某些数据。这可以通过以下步骤完成:

步骤一:获取 CoreData 上下文

在你的视图控制器中,你需要首先获取你的应用程序 CoreData 上下文,这可以通过以下代码完成:

let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
步骤二:创建一个函数来删除数据

接下来,你需要创建一个函数来删除给定的 CoreData 实体对象。对于此示例,我们将称之为 deleteItem。下面是删除一项任务的示例:

func deleteItem(item: Task) {
    context.delete(item)
    saveItems()
}
步骤三:在视图中使用删除函数

最后,在你的视图中,你需要使用上面的删除函数,以删除 CoreData 实体对象。这可以通过使用 onDelete modifer 来完成。在示例中,我们使用了 List 来显示数据,并使用了 onDelete modifier,如下所示:

List {
    ForEach(tasks) { task in
        Text(task.name)
    }
    .onDelete { indexSet in
        let itemToDelete = self.tasks[indexSet.first!]
        deleteItem(item: itemToDelete)
    }
}
总结

通过这些简单的步骤,你可以在 tvOS SwiftUI 应用程序中删除 CoreData 实体对象。记住要获取你的 CoreData 上下文、创建一个删除函数,并在你的视图中使用 onDelete modifier。