web-dev-qa-db-fra.com

Android - Google Maps api v2 - Désactiver le contrôle du zoom

Comment désactiver le bouton Zoom avant sur Google Map?

J'ai essayé de rechercher des commandes comme: map.getUiSettings().setZoomControlsEnabled(true)...SOMETHING mais rien n'existe.

Je veux laisser la création de mes propres boutons pour zoomer en dernier recours.

MISE À JOUR: Je dois préciser, je veux seulement désactiver le bouton Zoom avant, pas tout le contrôle du zoom.

46
KickAss

le paramètre que vous avez utilisé est correct, mais pour le désactiver, il doit être faux.

map.getUiSettings().setZoomControlsEnabled(false);

j'espère avoir bien répondu à votre question ..

Modifier

Malheureusement, vous ne pouvez pas masquer un bouton de zoom, vous pouvez masquer les deux boutons et créer votre propre contrôle de zoom personnalisé et les placer sur votre carte.

120
Coderji

@Coderji a dit que c'était impossible. Je dis que c'est possible :-)

Vous pouvez masquer l'un des boutons de zoom (+ ou -) et effectuer sur eux toutes les opérations comme en vue normale (marges, taille, remplissage, etc.)

    SupportMapFragment mapView = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
    View zoomControls = mapView.getView().findViewById(0x1);

    for(int i=0;i<((ViewGroup)zoomControls).getChildCount();i++){
        View child=((ViewGroup)zoomControls).getChildAt(i);
        if (i==0) {
            // there is your "+" button, zoom in

        }
        if (i==1) {
            // there is your "-" button, I hide it in this example
            child.setVisibility(View.GONE);
        }
    }
8
buxik
3
Gabe