给定一个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领域没有相同功能的扩展。 –