2012-01-18 20 views
5

Me gustaría cambiar el estilo predefinido de los controles de zoom en mi aplicación para que parezcan los nuevos controles de zoom en la aplicación Google Maps. Ver más abajo:Cambiar controles de zoom en un MapView

enter image description here

¿Cómo puedo hacerlo? He estado mirando alrededor y no he encontrado nada.

Gracias de antemano.

+0

¿Qué quieres hacer exactamente para dar más detalles? – DuyguK

+0

Me gustaría saber si hay alguna manera fácil de cambiar el aspecto de los botones de zoom o si tengo que crear nuevos objetos dibujables y agregarlos al proyecto, anular a los oyentes y demás ... pero creo que tengo que crear mis propios botones de zoom – jalv1039

+0

@ jalv1039: obtendrás esos botones fácilmente si buscas en google, –

Respuesta

5

Usted debe tener cuatro dibujables imagen a saber:

  1. zoom en (+) activar/desactivar
  2. Alejar (-) activar/desactivar

ponerlos en MapView diseño un ImageView o Button con imagen de fondo como el anterior dibuja.

A continuación, debe asignar onClickListeners como:

zoomIn.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     mapView.getController.zoomIn() 
     checkzoom(); 
    } 
}); 

zoomOut.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     mapView.getController.zoomOut() 
     checkzoom(); 
    } 
}); 

public void checkzoom() { 
    if(mapView.getZoomLevel()==1) // dont know if 0 or 1, just wrote it 
    { 
     zoomOut.setEnabled(false); 
     // or u can change drawable and disable click 
    } 
    if(mapView.getZoomLevel()==18) { 
     zoomIn.setEnabled(false); 
     // or u can change drawable and disable click 
    } 
} 

EDIT: zoom in zoom out

5

me resolvió el problema de esta manera: discapacitados construidos en los controles de zoom (setBuiltInZoomControls(false)), añadido mis propios botones a la interfaz de usuario y controladores agregados para hacer clic en eventos de botón.

Cuestiones relacionadas