レルムを使用してソートする方法がわかりません。私の現在のコードはです。レルムを使用してソートする方法は?
data = realm.objects(WorkoutSet)
data = data!.sorted("date")
私は低い数字に日高い数字からInt
をソートしたいです。ドキュメントにはより多くの情報が必要で、GitHubリンクには404
というメッセージがスローされます。
レルムを使用してソートする方法がわかりません。私の現在のコードはです。レルムを使用してソートする方法は?
data = realm.objects(WorkoutSet)
data = data!.sorted("date")
私は低い数字に日高い数字からInt
をソートしたいです。ドキュメントにはより多くの情報が必要で、GitHubリンクには404
というメッセージがスローされます。
あなたはsorted
方法にascending
パラメータを追加することができます
data = data!.sorted("date", ascending: false)
これは降順で日付フィールドを使用してWorkoutSetをソートします。スウィフト3および最新RealmSwiftバージョンで
更新
これは今に変更されました:あなたはソート基準を自分で評価したい場合は、使用することができ
data = data!.sorted(byKeyPath: "date", ascending: false)
:
data = data!.sorted(by: { (lhsData, rhsData) -> Bool in
return lshData.something > rhsData.something
})
しかし、結果を自分で並べ替えると、領域の代わりにArray
が返されることに注意してくださいオブジェクト。これは、Results
が怠惰で、上記の方法でソートすると、Realmが各オブジェクトを評価する必要があるため、その怠惰な動作を失うため、パフォーマンスとメモリのオーバーヘッドが発生することを意味します。可能であれば、結果に固執すべきです。アイテムを並べ替える方法が他にない場合は、上記の方法を使用してください。 Sort.ASCENDINGまたはSort.DESCENDING
import java.util.Date;
import io.realm.RealmModel;
import io.realm.annotations.Index;
import io.realm.annotations.PrimaryKey;
import io.realm.annotations.RealmClass;
import io.realm.annotations.Required;
@RealmClass
public class Pojo implements RealmModel {
@Index
@Required
@PrimaryKey
protected Long id;
protected Date data_field;
protected int int_field;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
}
import java.util.List;
import io.realm.Realm;
import io.realm.RealmQuery;
import io.realm.RealmResults;
import io.realm.Sort;
public class Dao {
public List<Pojo> getAllById(Long id) {
Realm realm = Realm.getDefaultInstance();
RealmQuery<Pojo> query = realm.where(Pojo.class);
query.equalTo("pojo_id", id);
RealmResults<Pojo> result = query.findAll();
result = result.sort("data_field", Sort.ASCENDING);
result = result.sort("int_field", Sort.DESCENDING);
//detaching it from realm (optional)
List<Pojo> copied = realm.copyFromRealm(result);
realm.close();
return copied;
}
}
。
realmResults.sort( "日付"、true)を使用して
「ソートの日付とIntの値が1から0まで」という意味を教えてください。 – joern
私はちょうどそれを編集しました。 –
感嘆符( '!')は 'data!'で何をしますか? –