Как скрыть слой в mapbox android?

   private void AddSanciangkoStreet(@NonNull Style style) {

   style.addImage("sanciangko-street",
                   BitmapUtils.getBitmapFromDrawable(getResources().getDrawable(R.drawable.floodicon)));

            style.addSource(new GeoJsonSource("sanciangkoFlood1-source-id"));

            style.addLayer(new SymbolLayer("sanciangkoFlood1-layer-id", "sanciangkoFlood1-source-id").withProperties(
                    iconImage("sanciangko-street"),
                    iconIgnorePlacement(true),
                    iconAllowOverlap(true),
                    iconSize(1f)
            ));

Мне нужно скрыть этот символ, когда мой statusValue = 0, и снова появляется, когда statusValue = 1. Пожалуйста, помогите


person Brylle    schedule 05.01.2020    source источник


Ответы (1)


Измените свойство видимости на NONE/VISIBLE:

public void updateLayer(final int statusValue) {
    mapboxMap.getStyle(new Style.OnStyleLoaded() {
        @Override
        public void onStyleLoaded(@NonNull Style style) {
            Layer layer = style.getLayer("sanciangkoFlood1-layer-id");
            if (layer != null) {
                layer.setProperties(PropertyFactory.visibility(
                        statusValue == 0 ? Property.NONE : Property.VISIBLE
                ));
            }
        }
    });
}
person Akaki Kapanadze    schedule 05.01.2020