(Google Map Android) добавить несколько маркеров поверх слоя Geojson - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь, чтобы маркеры сверху выделяли слой геойсона выше, но я не могу добавить более одного маркера. Я играл с zIndex, но он не работает вот мой маркер добавления и код геойсона:

mMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
        @Override
        public void onMapClick(LatLng latLng) {
            try {
                Geocoder gc = new Geocoder(ScratchmapActivity.this, Locale.getDefault());
                List<Address> addrs = null;
                addrs = gc.getFromLocation(latLng.latitude, latLng.longitude, 2);
                String country =addrs.get(0).getCountryName();
                zInd++;
                mMap.addMarker(new MarkerOptions().position(latLng).title(
                    "aloha").zIndex(zInd));

            }catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    });


public void addGeoJsonLayer(int color, int resource){

    try {
        GeoJsonLayer layer = new GeoJsonLayer(mMap, resource, getApplicationContext());

        GeoJsonPolygonStyle style = layer.getDefaultPolygonStyle();
        style.setFillColor(color);
        style.setStrokeColor(color);
        style.setStrokeWidth(1F);
        style.setZIndex((float) 1);

        layer.addLayerToMap();

    } catch (IOException ex) {
        Log.e("IOException", ex.getLocalizedMessage());
    } catch (JSONException ex) {
        Log.e("JSONException", ex.getLocalizedMessage());
    }

}

введите описание изображения здесь

1 Ответ

0 голосов
/ 28 сентября 2018

Ответ на этот вопрос, похоже, опоздал, но я столкнулся с той же проблемой, и я решил эту проблему, используя закрытую линейную строку вместо полигона.

    val listPoints = mutableListOf<LatLng>() 
    listPoints.addAll(vertices)
    listPoints.add(vertices.first())
    val gsLineString = GeoJsonLineString(listPoints)
...