Ver la Versión Completa : Duda MapFragment
fdoperezr
04/10/16, 04:07:42
Hola, me estoy iniciando en la programación en android y estoy creando una app que tiene un mapa en la pantalla principal.
Lo primero que hice fue crear una actividad en android studio de tipo navigation drawer en la cual en el layout content_main incluí otro layout para cargar el mapa (no sé si estará bien lo que hice). Ahora mi duda es como tengo qe trabajar sobre ese mapa ya sea para setear la ubicación del dispositivo o añadir marcadores al mapa qe es lo qe pretendo hacer.
kriogeN
04/10/16, 12:11:34
Un MapFragment no deja de ser un Fragment que ya lleva todas las inicializaciones (y destrucciones) ya incorporadas al código. De hecho a mi nunca me ha gustado usarlas, igualmente que tampoco me gustó nunca usar el MapActivity. Prefiero hacerlo todo a mano, por el mismo motivo tampoco uso el ListActivity y similares (por cierto que por el mismo motivo en iOS tampoco uso los UITableViewController y similares).
En cuanto a tu pregunta, se haría exactamente igual que si lo haces a mano, obteniendo el objeto GoogleMap y trabajando sobre él, si miras la documentación:
https://developers.google.com/android/reference/com/google/android/gms/maps/MapFragment
Verás que tienes que hacerlo con el método getMapAsync, su listener te devolverá el objeto GoogleMap, una vez lo tengas ya lo único que tienes que hacer es usar addMarker para añadir los marcadores:
https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap
En cuanto a tu posición, no la pones tu, la coge automáticamente del dispositivo. Como mucho puedes hacer si quieres que sea visible o no.
fdoperezr
04/10/16, 19:39:05
Un MapFragment no deja de ser un Fragment que ya lleva todas las inicializaciones (y destrucciones) ya incorporadas al código. De hecho a mi nunca me ha gustado usarlas, igualmente que tampoco me gustó nunca usar el MapActivity. Prefiero hacerlo todo a mano, por el mismo motivo tampoco uso el ListActivity y similares (por cierto que por el mismo motivo en iOS tampoco uso los UITableViewController y similares).
En cuanto a tu pregunta, se haría exactamente igual que si lo haces a mano, obteniendo el objeto GoogleMap y trabajando sobre él, si miras la documentación:
https://developers.google.com/android/reference/com/google/android/gms/maps/MapFragment
Verás que tienes que hacerlo con el método getMapAsync, su listener te devolverá el objeto GoogleMap, una vez lo tengas ya lo único que tienes que hacer es usar addMarker para añadir los marcadores:
https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap
En cuanto a tu posición, no la pones tu, la coge automáticamente del dispositivo. Como mucho puedes hacer si quieres que sea visible o no.
Disculpa la duda pero aún soy principiante en android pero como conecto el layout con la clase para implementar los métodos?
Dexafree
05/10/16, 12:09:54
Puedes utilizar también el MapView si no quieres tener un fragment (si te sientes más comodo con el findViewById), aunque debes recordar llamar a los métodos
onCreate(Bundle)
onStart()
onResume()
onPause()
onStop()
onDestroy()
onSaveInstanceState()
onLowMemory()
de la vista en cada uno de los eventos de tu activity o fragment (tienes que "pasarselos", por decirlo de algún modo).
En cuanto a tu posición, no la pones tu, la coge automáticamente del dispositivo
Si apuntas a versiones con Android 6 o superiores, acordándote de pedir los permisos.
vBulletin® v3.8.1, Copyright ©2000-2026, Jelsoft Enterprises Ltd.