web-dev-qa-db-fra.com

Liste <Object> ou RealmList <RealmObject> sur Realm Android

J'ai besoin d'un list<Object> en utilisant Realm. J'ai essayé RealmList<RealmObject> mais cela ne fonctionne pas car RealmObject est abstrait.

18
Bachlet Tansime

Chrétien du royaume ici. Vous pouvez uniquement enregistrer des objets qui étendent RealmObject à l'intérieur d'un domaine. En effet, Realm n'est pas une base de données sans schéma. Nous avons besoin d'un schéma et ce schéma est défini par vos objets qui étendent RealmObject. Nous utilisons RealmList car il résume la communication avec la base de données sous-jacente, mais il implémente l'interface List.

Cela signifie que

public class Foo extends RealmObject {
  private List<Object> objects;  // not legal
  private RealmList<Object> objects;  // not legal 
  private RealmList<RealmObject> objects; // not legal
}

public class Foo extends RealmObject {
  private RealmList<Foo> objects; // legal
}

List<Foo> reference = foo.getObjects(); // Legal
56