我尝试用android中的Realm读取mydata,调用两个像这样的数据库
Fragment1.class
public Model1 searchPerson1(int personId) {
RealmResults<Model1> results1 = myRealm.where(Model1.class).equalTo("id", personId).findAll();
myRealm.beginTransaction();
myRealm.commitTransaction();
return results1.get(0);
}
Fragment2.class
public Model2 searchPerson2(int personId) {
RealmResults<Model2> results2 = myRealm.where(Model2.class).equalTo("id", personId).findAll();
myRealm.beginTransaction();
myRealm.commitTransaction();
return results2.get(0);
}
它在RealmResults中显示以下错误。我在不同的片段中使用这两种方法。请有人帮帮我
java.lang.ArrayIndexOutOfBoundsException: rowIndex > available rows: 0 > 0
答案 0 :(得分:1)
在尝试从位置获取对象之前,需要检查查询结果中的对象计数:
RealmResults<QuestionRealm> rsQues;
if(rsChap.size() > position && position >= 0){
rsQues = myRealm.where(QuestionRealm.class)
.equalTo("chapter_id",rsChap.get(position)
.getId())
.findAll();
}