給定一個RealmObject,它具有latitude
和longitude
字段,並且您有RealmList或RealmResult這樣的對象。你如何根據距離來排序,比如你目前的Location?如雨後春筍般涌現在腦海如何按距離排序RealmList或RealmResult?
思路是:
- 添加一個字段
calculatedDistance
,遍歷所有對象,並設置它。這種方法的問題是,下次您撥打copyToRealmOrUpdate(..)時,您將用空值覆蓋此字段。 - 使用我自己的自定義Comparator在列表或結果上調用Collections.sort(...),但當他們按「局外人」排序時,我找不到它記錄在任何受管理的RealmList或RealmResult行爲的任何地方。
- 做一個真正的高級查詢使用groupings和between(..)等 - 但我不能想出一個好主意。
Android上的任何人發現一個很好的解決方案?
我所知道的是,[RealmGeoPoint(https://github.com/realm/realm-java/issues/1772)在路線圖上,但據我所知,並不完全是一個優先事項。有一個迅速解決方案鏈接在那裏,但我真的沒有得到斯威夫特。 – EpicPandaForce
@EpicPandaForce謝謝,我添加了我的投票。我真的很想在此期間找到解決方案。我查看了Swift代碼,並且它使用了我認爲在Java領域沒有相同功能的擴展。 –