Agregar un mapa a una aplicación
La forma más sencilla de añadir un mapa a una aplicación es especificarlo en el archivo de diseño XML interfaz de usuario para una actividad.
El siguiente archivo de ejemplo de diseño muestra el ejemplo SupportMapFragment añadido al archivo activity_map_demo.xml creado por Android Studio:
<Xmlns fragmento: androide = "https://schemas.android.com/apk/res/android"
xmlns: Herramientas = "https://schemas.android.com/tools"
android: layout_width = "match_parent"
android: layout_height = "match_parent"
android: id = "@ + / Identificación del mapa"
herramientas: contexto = ". MapDemoActivity"
android: name = "com.google.android.gms.maps.SupportMapFragment" />
Viendo del usuario Ubicación actual
Ubicación actual del usuario se puede mostrar en el mapa mediante la obtención de una referencia al objeto GoogleMap asociado con el mapa que se muestra y llamar al método setMyLocationEnabled () de la instancia, que pasa por un valor de verdad. Edite el método onCreate () en el archivo MapDemoActivty.java para permitir la visualización de la ubicación actual del usuario:
com.ebookfrenzy.mapdemo paquete; android.support.v4.app.FragmentActivity importación; android.os.Bundle importación; com.google.android.gms.maps.GoogleMap importación; com.google.android.gms.maps.SupportMapFragment importación; com.google.android.gms.maps.model.LatLng importación; com.google.android.gms.maps.model.MarkerOptions de importación; public class MapDemoActivity extiende FragmentActivity { privado mmap GoogleMap; // Podría ser nulo si servicios de Google Play APK no está disponible. @ Override protected void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); setContentView (R.layout.activity_map_demo); setUpMapIfNeeded (); si (PAMM! = null) { mMap.setMyLocationEnabled (true); } } . . . }
Cambiar el tipo de mapa
El tipo de mapa visualizado se puede modificar dinámicamente haciendo una llamada al método setMapType () del objeto GoogleMap correspondiente, que pasa a través de uno de los siguientes valores:
- GoogleMap.MAP_TYPE_NONE - Una cuadrícula vacía sin azulejos mapeo mostradas.
- GoogleMap.MAP_TYPE_NORMAL - La vista estándar que consiste en la hoja de ruta clásica.
- GoogleMap.MAP_TYPE_SATELLITE - Muestra las imágenes de satélite de la región del mapa.
- GoogleMap.MAP_TYPE_HYBRID - Muestra las imágenes de satélite con los mapas de carreteras superpuestas.
- GoogleMap.MAP_TYPE_TERRAIN - Muestra información topográfica como líneas de contorno y colores.
El siguiente cambio de código con el método onCreate (), por ejemplo, cambia el mapa a modo de Terreno:
@ Override protected void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); setContentView (R.layout.activity_map_demo); setUpMapIfNeeded (); si (PAMM! = null) { mMap.setMyLocationEnabled (true); mMap.setMapType (GoogleMap.MAP_TYPE_TERRAIN); } }
Por otra parte, el tipo de mapa se puede especificar en el archivo de diseño XML en el que el mapa está incrustado usando el mapa: propiedad mapType junto con un valor de nada, normal, híbrido, por satélite o el terreno. Con el fin de poder utilizar esta directiva, sin embargo, primero es necesario añadir el espacio de nombres mapa para el archivo de recursos XML en el que se utilizan las directivas:
xmlns: mapa = "https://schemas.android.com/apk/res-auto"
Por ejemplo:
<? Xml version = "1.0" encoding = "UTF-8"?> <Xmlns fragmento: androide = "https://schemas.android.com/apk/res/android" xmlns: mapa = "https://schemas.android.com/apk/res-auto" android: id = "@ + / Identificación del mapa" android: layout_width = "match_parent" android: layout_height = "match_parent" Mapa: mapType = "híbrido" android: name = "com.google.android.gms.maps.SupportMapFragment" /
Viendo el mapa con los controles para el usuario
El API de Google Maps para Android ofrece una serie de controles que pueden ser opcionalmente, este muestran al usuario que consiste en acercar y alejar los botones, un botón de "mi lugar" y una brújula.
Sea o no se muestran los controles de zoom y la brújula se puede controlar mediante programación o en el elemento de mapa de recursos de diseño XML. Para configurar los controles de programación, una referencia a los UiSettings objeto asociado con el objeto GoogleMap se debe obtener:
MapSettings UiSettings;
mapSettings = map.getUiSettings ();
Los controles de zoom se activan y desactivan mediante llamadas al método setZoomControlsEnabled () de los UiSettings objeto. Por ejemplo:
mapSettings.setZoomControlsEnabled (true);
Alternativamente, el mapa: Vivienda uiZoomControls puede ajustarse dentro del elemento de mapa del archivo de recursos XML:
mapa: uiZoomControls = "false"
La brújula se puede mostrar ya sea a través de una llamada al método setCompassEnabled () de la instancia UiSettings, a través de recursos XML utilizando el mapa: propiedad uiCompass.
El botón "Mi ubicación" sólo aparecerá cuando el modo Mi ubicación está activada como se describe anteriormente en este Tutoriales En Linea.
El botón se puede evitar que aparezcan, incluso cuando en este modo a través de una llamada al método setMyLocationButtonEnabled () de la instancia UiSettings.
Manipulación Mapa Gesto Interacción
El API de Google Maps para Android es capaz de responder a una serie de diferentes interacciones del usuario.
Estas interacciones pueden ser usados para cambiar el área del mapa que se muestra, el nivel de zoom e incluso el ángulo de visión (de tal manera que una representación en 3D del área del mapa se muestra para determinadas ciudades).
Mapa Zooming Gestos
Soporte para gestos relacionados con el zoom dentro y fuera de un mapa puede ser activada o desactivada por el método de setZoomControlsEnabled () de los UiSettings objeto asociado a la instancia GoogleMap.
Por ejemplo, el siguiente código permite gestos de zoom para nuestro mapa ejemplo:
com.google.android.gms.maps.UiSettings de importación;
.
.
.
MapSettings UiSettings;
mapSettings = mMap.getUiSettings ();
El mismo resultado se puede lograr dentro de un archivo de recursos XML estableciendo el mapa: Vivienda uiZoomGestures a verdadero o falso.
Cuando está activado, el zoom se producirá cuando el usuario hace gestos de pellizcos en la pantalla.
Del mismo modo, un doble toque, se ampliará mientras que un toque con dos dedos alejará la imagen. Un dedo zoom gestos, por otro lado, se realizan pulsando dos veces, pero no liberar el segundo toque y luego deslizar el dedo hacia arriba y hacia abajo en la pantalla para acercar y alejar respectivamente.
Comentarios