¿Cómo puedo dibujar una flecha que muestre la dirección de manejo en MapView?

Utilizo ese componente de Google Maps MapView en una aplicación de Android. Puedo usar la ubicación GPS para mostrar mi ubicación con un punto. Pero me gustaría mostrar una flecha en su lugar, que señala la dirección de conducción (rodamiento). Creo que puedo usar el valor del bearing para obtener el ángulo de la flecha.

¿Cómo puedo hacer eso?

One Solution collect form web for “¿Cómo puedo dibujar una flecha que muestre la dirección de manejo en MapView?”

Asumiendo que usted tiene la localización entonces obtenga el cojinete haciendo:

 float myBearing = location.getBearing(); 

Para implementar la superposición utilizaremos ItemizedOverlay y OverlayItem . Necesitará subclasificar OverlayItem para agregar la funcionalidad para rotar Drawable. Algo como:

 public BitmapDrawable rotateDrawable(float angle) { Bitmap arrowBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.map_pin); // Create blank bitmap of equal size Bitmap canvasBitmap = arrowBitmap.copy(Bitmap.Config.ARGB_8888, true); canvasBitmap.eraseColor(0x00000000); // Create canvas Canvas canvas = new Canvas(canvasBitmap); // Create rotation matrix Matrix rotateMatrix = new Matrix(); rotateMatrix.setRotate(angle, canvas.getWidth()/2, canvas.getHeight()/2); // Draw bitmap onto canvas using matrix canvas.drawBitmap(arrowBitmap, rotateMatrix, null); return new BitmapDrawable(canvasBitmap); } 

Entonces todo lo que queda por hacer es aplicar este nuevo Drawable al OverlayItem. Esto se hace usando el método setMarker ().

  • Superponer una actividad en otra actividad O superponer una vista sobre otra
  • Mostrar un bus móvil en google maps api v2 android
  • Comportamiento extraño en el navegador de Android al seleccionar campos
  • Mi superposición no aparece hasta que se pulse mapView en android
  • RelativaLayout TextView superposición
  • Teclado sobre EditText en segundo clic
  • Barra de herramientas Android superpuesta TabLayout en CollapsingToolbarLayout
  • Aplicación de Android: mostrar elementos de superposición en AsyncTask
  • Custom OverlayItem sin dibujar
  • ¿Cómo mostrar una ruta entre dos geocoords en google maps?
  • ¿Cómo puedo poner una vista encima de un glSurfaceView con un fondo transparente?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.