2016-02-16 7 views
8

Come convertire RealmResults<E> in List<E>?Converti RealmResults <E> in Elenco <E> con copyFromRealm

ho provato con il metodo copyFromRealm:

RealmResults<EventRealm> result = realm.where(EventRealm.class).findAll(); 

EventRealm eventRealm = result.get(0); 
int id = eventRealm.getId(); // return id 2564 
String title = eventRealm.getTitle(); // return "My event" 

List<EventRealm> copied = realm.copyFromRealm(result); 

EventRealm eventRealm1 = copied.get(0); 
int id1 = eventRealm1.getId(); // return id 0 
String title1 = eventRealm1.getTitle(); // return "My event" 

Ma non capisco il motivo per cui in copia getTitle() dare risultato corretto, ma getId() errato.

Modello

public class EventRealm extends RealmObject { 

     @PrimaryKey 
     private int id; 
     private String title; 

     public int getId() { 
      return id; 
     } 

     public void setId(int id) { 
      this.id = this.id; 
     } 

     public String getTitle() { 
      return title; 
     } 

     public void setTitle(String title) { 
      this.title = title; 
     } 
    } 

risposta

8

Il problema è il vostro metodo setId.

In questo momento lo fa:

public void setId(int id) { 
    this.id = this.id; 
} 

Dovrebbe essere

public void setId(int id) { 
    this.id = id; 
} 
+4

Mi vergogno, mi dispiace che il tempo trascorso – Alexandr