我有一个RealmResults<Section>,其中有一个我想在每个部分中清除的RealmList<Event>字段。

我已经尝试过(包括mRealm.executeTransaction)

for (Section section : mSections) {
    section.getEvents().clear();
}


Iterator<Section> sectionIterator = mSections.iterator();
while (sectionIterator.hasNext()) {
    sectionIterator.next().getEvents().clear();
}

但是Realm抛出了这个异常

最佳答案

由于实际上并没有删除要迭代的元素,因此可以使用传统的for循环:

for (int i = 0; i < mSections.size(); i++) {
    mSections.get(i).getEvents().clear();
}

请注意,如果确实需要使用Iterator删除元素,则需要在remove()本身上使用Iterator方法。

See Documentation

10-06 14:49