昨天我们已经能成功新增订单了,今天我们就来练习直接在TableView往左滑完成删除订单的功能吧!
要让TableView能够往左滑删除,需要使用以下function
接着在function里加入以下程序码
let orderId = NSPredicate(format: "id = %@ ", self.orders[indexPath.row].setId)
//左滑删除
let deleteOrders = realm.objects(Order.self).filter(orderId)
let deleteAction = UIContextualAction(style: .destructive, title: "删除") {[self] (action, sourceView, complete) in
self.orders.remove(at: indexPath.row)
self.myTableView.deleteRows(at: [indexPath], with: .top)
try! self.realm.write {realm.delete(deleteOrders)}
complete(true)
}
deleteAction.image = UIImage(systemName: "trash")//在按钮上新增图示
let leftSwipeConfiguration = UISwipeActionsConfiguration(actions: [deleteAction])
return leftSwipeConfiguration
以上程序码是透过NSPredicate查询并且用UIContextualAction所选TableView列的订单id相符的订单在TableView上与资料库做同步删除的动作
此外,也可以帮自己的删除按钮上新增垃圾桶的图示,这样看起来比较美观!
如此一来,订单的删除功能就完成罗!那假设我们想要修改这笔订单该怎麽办呢?明天就来带大家一探究竟~
<<: Day16 - 用简单的字串替换实作价值上亿的机器人
>>: Day 16:AWS是什麽?30天从动漫/影视作品看AWS服务应用 -《云端情人》part 3
藉由 docker-compose 的协助,要安装好服务显得容易许多。现今多数官方的 docker ...
只能⼀个版型吗? 如果你喜欢,可以有多种款式的版型,预设的版型是 app/views/layouts...
网页元件中 , 常会使用 Modal 这种类型的元件 如果我们将其制作成一个 <Modal&g...
今天补充一下,function composition 的概念。 在之前我们有提过 pipe 和 c...
对於HTML里面编写的大多数元素我们都可以赋予它特别的属性,像是在前面章节我们提到,将div赋予了c...