Android 在领域数据库中过滤-findAll不';不适用于包含布尔值的查询
我有一个领域数据库,其中包含具有一个布尔属性的对象。在整个应用程序中,我需要对数据库的所有内容进行一次过滤,这完全可以正常工作 在另一个活动中,我只需要过滤数据库中的对象,这些对象的布尔值设置为true。但它不起作用,它仍然会过滤所有对象 你能检查一下我的密码,告诉我我做错了什么吗Android 在领域数据库中过滤-findAll不';不适用于包含布尔值的查询,android,filter,boolean,realm,Android,Filter,Boolean,Realm,我有一个领域数据库,其中包含具有一个布尔属性的对象。在整个应用程序中,我需要对数据库的所有内容进行一次过滤,这完全可以正常工作 在另一个活动中,我只需要过滤数据库中的对象,这些对象的布尔值设置为true。但它不起作用,它仍然会过滤所有对象 你能检查一下我的密码,告诉我我做错了什么吗 favourites = realm.where(MyObject.class).equalTo("isFavourite", true).findAll(); editTextSearch.addTextChan
favourites = realm.where(MyObject.class).equalTo("isFavourite", true).findAll();
editTextSearch.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (favourites.isEmpty()) {
return;
}
adapter = new ImageAdapter(FavouritesActivity.this, helper.searchInFavourites(s));
gridView.setAdapter(adapter);
}
}
OrderedRealmCollection<MyObject> searchInFavourites(CharSequence search) {
OrderedRealmCollection<MyObject> favourites;
if (search != null && search.length() > 0) {
favourites = realm.where(MyObject.class).equalTo("isFavourite", true)
.contains("name", search.toString(), Case.INSENSITIVE)
.or()
.contains("category", search.toString(), Case.INSENSITIVE)
.or()
.contains("description", search.toString(), Case.INSENSITIVE).findAll();
} else {
favourites = realm.where(Illusion.class).equalTo("isFavourite", true).findAll();
}
return favourites;
}
favorites=realm.where(MyObject.class).equalTo(“isfavorite”,true).findAll();
editTextSearch.addTextChangedListener(新的TextWatcher(){
@凌驾
public void onTextChanged(字符序列、int start、int before、int count){
if(favorites.isEmpty()){
回来
}
adapter=新的ImageAdapter(FavoriteSActivity.this、helper.SearchFavorites);
setAdapter(适配器);
}
}
OrderedRealmCollection搜索Favourites(CharSequence搜索){
OrderedRealmCollection收藏夹;
if(search!=null&&search.length()>0){
Favorites=realm.where(MyObject.class).equalTo(“IsFavorite”,true)
.contains(“name”,search.toString(),不区分大小写)
.或()
.contains(“category”,search.toString(),不区分大小写)
.或()
.contains(“description”,search.toString(),不区分大小写).findAll();
}否则{
Favorites=realm.where(irusion.class).equalTo(“IsFavorite”,true).findAll();
}
返回收藏夹;
}
favorites=realm.where(MyObject.class)
.beginGroup()//Favorites=realm.where(MyObject.class)
.beginGroup()//
favourites = realm.where(MyObject.class)
.beginGroup() // <--
.equalTo("isFavourite", true)
.endGroup() // <--
.beginGroup() // <--
.contains("name", search.toString(), Case.INSENSITIVE)
.or()
.contains("category", search.toString(), Case.INSENSITIVE)
.or()
.contains("description", search.toString(), Case.INSENSITIVE)
.endGroup() // <--
.findAll();