【发布时间】:2015-08-04 10:28:38
【问题描述】:
我有以下 RealmObject:
public class City extends RealmObject {
private String cityId;
private RealmList<Street> streets;
public String getId() {
return cityId;
}
public void setCityId(String cityId) {
this.cityId = cityId;
}
public RealmList<Street> getStreets() {
return streets;
}
public void setStreets(RealmList<Street> streets) {
this.streets = streets;
}
}
现在有了 cityId,我需要查询特定城市的街道。怎么做?我所做的尝试是:
Realm.getInstance(context).where(City.class).equalTo("cityId", someCityId, false)
.findFirst().getStreets().where().findAll()
但这会导致异常。我需要在实现过滤的ListView 中显示街道,因此我需要将街道设为RealmResults 才能使用RealmBaseAdapter<Street>。
【问题讨论】:
-
implementing filteringwaaaaaa 等一下,你需要过滤什么? androidFilter接口和东西在后台线程上运行。它将导致RealmAccessedFromWrongThreadException或其他任何名称。 -
你是如何过滤的?这个问题不完整。
-
好吧,它不是真正的过滤接口实现,只是一个调用updateRealmResults()的
public void filter方法。这并不重要,问题主要是关于查询。它的作用 - 它使用 .contains("streetName", searchText, false) 进行搜索 -
您遇到了什么异常?
标签: android realm realm-base-adapter