【发布时间】:2014-12-06 12:07:35
【问题描述】:
这是我的删除函数,它确实找到了workday1 对象:
public static void delete(Context context, Workday workday) {
Realm realm = getRealm(context);
realm.beginTransaction();
Workday workday1 = realm.where(Workday.class)
.equalTo("date", workday.getDate())
.equalTo("hours", workday.getHours())
.equalTo("minutes", workday.getMinutes())
.findFirst();
workday1.removeFromRealm();
realm.commitTransaction();
}
当它执行removeFromRealm 方法时会崩溃:
java.lang.IllegalStateException: Illegal State: Row/Object is no longer valid to operate on.被删除了吗?
我该如何解决这个问题?任何帮助将不胜感激。
UPDATE(我可以打印以下方法返回的内容):
Workday workday1 = realm.where(Workday.class)
.equalTo("date", workday.getDate())
.equalTo("hours", workday.getHours())
.equalTo("minutes", workday.getMinutes())
.findFirst();
System.out.println("--------------------------------");
System.out.println(workday1.getHours());
【问题讨论】:
-
在 removeFromRealm() 之前可以访问对象吗?例如打印出来?
-
可以,请检查我的更新。
-
如果这是你可以复制的东西,我建议你在github.com/realm/realm-java/issues创建一个github问题