【问题标题】:How to delete an item with a button in Realm?如何在Realm中使用按钮删除项目?
【发布时间】:2020-06-06 16:43:38
【问题描述】:

我在 swift5 中编程并想删除领域中的内容,我之前将其附加到数组中。但我不知道如何在代码中实现它。

这是用于将项目附加到列表的代码 sn-ps,但现在我需要第二个名为 deleteButtonPressed 的按钮来删除项目。

 @IBAction func addButtonPressed(_ sender: UIBarButtonItem) {
    var textField = UITextField()

    let alert = UIAlertController(title: "Add new todoey item", message: "", preferredStyle: .alert)

    let action = UIAlertAction(title: "Add Item", style: .default) { (action) in
        //what will happen once the user clicks the Add Item button on our UIAlert
        //print("Success") //print ot the debug console
        //print("Add item present")
        //print(textField.text)

        if let currentCategory = self.selectedCategory {
            do {
                try self.realm.write {

                           let newItem = Item()
                           newItem.title = textField.text!
                           currentCategory.items.append(newItem)

                       }

                    } catch {
                        print("Error saving new items, \(error)")
                    }
                }
        self.tableView.reloadData()
        }

    alert.addTextField { (alertTextField) in
        alertTextField.placeholder = "Create new item"
        textField = alertTextField

    }


    alert.addAction(action)
        self.present(alert, animated: true, completion: nil)


}

【问题讨论】:

  • 你试过realm.delete()吗?
  • Realm 入门指南Deleting Objects 对此进行了介绍。在发布问题之前咨询文档总是一个好主意,因为您尝试做的事情可能会被涵盖。

标签: ios swift xcode realm swift5.1


【解决方案1】:

这很简单。您所要做的就是在领域上使用delete 方法。

例子:

try? self.realm.write {
    self.realm.delete(/* The Object you wanna delete */)
}

如果您的目标是删除最后添加的对象,则应使用以下代码:

try? self.realm.write {
    if let item = currentCategory.items.last {
        self.realm.delete(item)
    }
}

【讨论】:

  • 谢谢尼古拉斯,这就是我要找的
  • 如何删除选中的行而不是最后一项的最后一行?谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-20
  • 1970-01-01
  • 2021-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多