У меня есть GeoJSON
файл, который рендерится в mapBoxMap
. У него есть некоторые свойства для каждого объекта, например: name, id et c. Теперь мне нужно сохранить все значения свойства скажем, name в arrayList. Вот как я пытался добиться этого.
MainActivity
private ArrayList<String> arrayList2 = new ArrayList<>();
List<Feature> features = source.querySourceFeatures(Expression.all());
for (int i = 0; i < features.size(); i++) {
Feature feature = features.get(i);
// Ensure the feature has properties defined
if (feature.properties() != null) {
for (Map.Entry<String, JsonElement> entry : feature.properties().entrySet()) {
if (entry.getKey().equals("name")) {
arrayList2.add(entry.getValue().toString();
}
}
}
Этот код предназначен для извлечения всех значений name
в list
. Тем не менее, это не работает должным образом, так как не выбирает их в правильном порядке, некоторые значения дублируются, и окончательный список выглядит неполным и ошибочным. Есть ли лучший способ добиться этого с помощью Mapbox?