我已经开始使用“Realm”,但我无法弄清楚如何获得值等于 true的所有结果。
看看我下面的代码:
Java 类
@RealmClass
public class Bookmark extends RealmObject {
private java.lang.String IdBookMark;
private boolean BookMarkActive;
public String getIdBookMark() {
return IdBookMark;
}
public void setIdBookMark(String idBookMark) {
IdBookMark = idBookMark;
}
public boolean isBookMarkActive() {
return BookMarkActive;
}
public void setBookMarkActive(boolean bookMarkActive) {
BookMarkActive = bookMarkActive;
}
}
功能:
private boolean AnyBookMark (){
Realm realm = Realm.getInstance(getContext());
RealmQuery<Bookmark> query = realm.where(Bookmark.class);
query.contains("BookMarkActive","true");
RealmResults<Bookmark> userBookmarks = query.findAll();
return userBookmarks.isEmpty();
}
错误:
致命异常:主进程:gon250.dublinbikes,PID:2624 java.lang.IllegalArgumentException:字段“BookMarkActive”:类型不匹配。为字符串,应为布尔值。在 io.realm.RealmQuery.getColumnIndices(RealmQuery.java:146) 在 io.realm.RealmQuery.contains(RealmQuery.java:816) 在 io.realm.RealmQuery.contains(RealmQuery.java:802) 在 tabs.Tab2。 AnyBookMark(Tab2.java:
版本:
编译 'io.realm:realm-android:0.78.0'
BookMarkActive
用equals获得所有结果的正确方法是什么true
。