我有一个location
geojson文件,如下所示:
{
"type":"FeatureCollection",
"features":[
{"type":"Feature","properties":{"name":"West"}},
{"type":"Feature","properties":{"name":"East"}},
{"type":"Feature","properties":{"name":"North"}}
]}
var geoJsonLayer = GeoJsonLayer(googleMap, R.raw.location, this)
geoJsonLayer.features.forEach {
print(it.properties)
}
我发现geoJsonLayer.features
的顺序变为:
{
"East",
"West",
"North"
}
官方文档没有说明是否随机返回特性元素。
我想迭代geoJsonLayer.features
以按照location
文件中显示的顺序获得properties
。
是否有任何变通方案?
1条答案
按热度按时间bvhaajcl1#
这是因为
geoJsonLayer.features
是一个HashMap
,迭代顺序取决于键,理论上可以在utils库的BiMultiMap.java
类中用LinkedHashMap
替换HashMap
但是看起来最简单的方法是通过自定义比较器对
geoJsonLayer.features
的值排序。