2016-10-09 1 views
2

나는 필드의 하나로서 RealmListRealmObject을 가지고 있습니다. RealmObject의 RealmList입니다. 순서를 유지하는 방법?

public class ToyMaker extends RealmObject { 
    private RealmList<Toy> toyList; 
    ... 
} 

public class Toy extends RealmObject { 
    ... 
} 
  1. toyList에서 Toy의 순서는 영역에 기록 할 때 지속과 다시 읽는 것인가? 주문이 영역에 의해 유지되지 않는 경우

  2. , 내가 이것을 달성 할 수있는 방법을 수동으로

    A. 내가 Toy 클래스에서 추가 필드 (예 : 인덱스)를 추가 할 수 없습니다 주어진 (A Toy 많은 ToyMaker 그래서 인덱스 필드를 가질 수 있습니다 Toy에 가능하지 않다.

    B. 순서화는 ToytoyList에 첨가하는 순서이다.

답변

4

A RealmList이 주문되므로 케이스 # 1이 정확합니다. 원하는 순서로 추가하면 순서가 유지됩니다. 하지만 일반적으로

이 주문은 그래서 순서를 의미하지 않는 영역에서 두 객체를 생성, 보장되지 :

realm.createObject(Person.class, 1); 
realm.createObject(Person.class, 2); 

// Doing this is not guaranteed to return Person:1 
realm.where(Person.class).findAll().first() 

// Always use a sort in queries if you want a specific order 
realm.where(Person.class).findAllSorted("id", Sort.ASCENDING).first(); 
+0

내가 영역의 문서에 대한 정보의 조각을 찾을 수 없습니다, 나는 그것을 생각 당신이 문서에 이것을 추가 할 수 있다면 좋을 것입니다. 감사! – Weizhi

관련 문제