2016-11-26 19 views
0

私はクラスを持っている:RealmList要素を削除するにはどうすればいいですか?次のように

public class SomeStuff extends RealmObject { 

    public RealmList<CatDetails> cat; 


    public RealmList<CatDetails> getcat() { 
     return cat; 
    } 

    public void setCat(RealmList<CatDetails> cat) { 
     this.cat = cat; 
    } 
} 

、ここではCatDetailsです:

public class CatDetails extends RealmObject { 

    @Index String catNumber; 
    @Index String catName; 


    // setters and getters for catName and catNumber 
} 

は今どのように私は、フィールドcatから一つの要素を削除することについては行くのですか?

realm.where(SomeStuff.class).findAll().get(pos).getCatDetails().get(0).deleteFromRealm(); 

など:

realm.where(SomeStuff.class).findAll().get(pos).getCatDetails().deleteAllFromRealm(); 

をしかし、私は取得することは、私は私が試したSomeStuff

1でクラスの配列リストのサイズを小さくしたい、ですArrayIndexOutOfBoundsException - 両方のケースでrecyclerviewを設定したとき。

+0

そのRecyclerViewアダプタを使って何をしているのかを追加する必要があります....そして、それがRealmRecyclerViewAdapterであるかどうか、さらに重要なことにこの削除を行っているスレッド – EpicPandaForce

答えて

0

削除:

realmList.get(0).deleteFromRealm(); 

しかし、それはテーブルがそうちょうどそれがRealmResultsでないように拡張forループは動作しません使用して、トランザクション内で即座に更新されますことは注目に値します。通常iterator()remove()が代わりに機能します。

関連する問題