单击按钮后如何从“领域数据库”中删除数据?

时间:2019-12-26 06:42:59

标签: android realm

希望您一切都好。

您能否在按钮点击事件中从realm删除特定数据? 我有一个RecyclerView,并且在其中设置了CardView和删除按钮的EditText中。我希望当我按下CardView上的Delete按钮时,会同时从CardViewrealm数据库中删除数据。我尝试更多的努力,但未能成功。希望你们能给我更好的答复。 提前致谢。 问候

活动屏幕:

Activity Screen

3 个答案:

答案 0 :(得分:1)

使用deleteFromRealm()删除特定记录

  val realm: Realm = Realm.getDefaultInstance()
            try {
                realm.executeTransaction {
                    val info = realm.where<CLASS>() // replace your realm class file
                            .equalTo(KEY, VALUE)  // match data with key - value pair
                            .findFirst()
                    info?.deleteFromRealm() // delete from realm
                }
            } finally {
                realm.close()
            }

答案 1 :(得分:0)

您可以使用rows.clear();获取更多信息,请访问此处https://stackoverflow.com/a/36736415/9315408

答案 2 :(得分:0)

在0.88.3版本的Realm中,使用clear()

realm.executeTransaction(new Realm.Transaction() {
  @Override
  public void execute(Realm realm) {
      RealmResults<User> rows = realm.where(User.class).equalTo(User.USER_ID,userId).findAll();
      rows.clear();
  }
});

从Realm的0.89版本开始,改用deleteAllFromRealm()

realm.executeTransaction(new Realm.Transaction() {
  @Override
  public void execute(Realm realm) {
      RealmResults<User> result = realm.where(User.class).equalTo(User.USER_ID,userId).findAll();
      result.deleteAllFromRealm();
  }
});