KickAss
KickAss

Reputation: 4280

Android - Google Maps api v2 - Disable Zoom control

How do I disable the Zoom In button on the Google Map?

I tried looking for commands like: map.getUiSettings().setZoomControlsEnabled(true)...SOMETHING but nothing exists.

I want to leave creating my own buttons for zooming as a last resort.

UPDATE: I should clarify, I only want to disable the Zoom In button, not the whole Zoom Control.

Upvotes: 51

Views: 38240

Answers (5)

user3630819
user3630819

Reputation: 21

In jetpack compose you can easily set zoomControlsEnabled = false

 GoogleMap(uiSettings = 
             MapUiSettings(
                zoomControlsEnabled = false
               )
              ) {}
        

Upvotes: 2

Tippu Fisal Sheriff
Tippu Fisal Sheriff

Reputation: 2846

In Kotlin you can use this code to enable

mMap.uiSettings.setZoomControlsEnabled(true)

Upvotes: 0

buxik
buxik

Reputation: 2625

@Coderji said it's impossible. I say it's possible :-)

You can hide one of zoom button (+ or -) and perform on them all operations like in normal view (margins, size, padding, 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);
        }
    }

Upvotes: 8

Coderji
Coderji

Reputation: 7745

the setting you used is right, but to disable it, it should be false.

map.getUiSettings().setZoomControlsEnabled(false);

hope I got your question right..

Edit

Unfortunately, you can't hide one zoom buttons, what you can do is hide both buttons and create your own custom zoom control and place them on the your map.

Upvotes: 130

Related Questions