Cómo agregar un Marcador / Pin en un Android de ImageView?

Me gustaría preguntar sobre cómo implementar o añadir un marcador en un imageView. Hice un SVG usando svglib y utilicé un customImageView de modo que pueda acercar y hojear alrededor de la imagen.

Aquí está mi código de cómo he utilizado mi customImageView

@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { SVG svg; switch (mNum) { case 1: svg = SVGParser.getSVGFromResource(getResources(), R.raw.t1); break; case 2: svg = SVGParser.getSVGFromResource(getResources(), R.raw.t2); break; case 3: svg = SVGParser.getSVGFromResource(getResources(), R.raw.t3); break; case 4: svg = SVGParser.getSVGFromResource(getResources(), R.raw.t4); break; default: svg = SVGParser.getSVGFromResource(getResources(), R.raw.android); } View v = inflater.inflate(R.layout.hello_world, container, false); View tv = v.findViewById(R.id.text); imageView = (GestureImageView) v.findViewById(R.id.imageView1); imageView.setStrict(false); imageView.setStartingScale(lastScale); // if(lastXPosition!=0 && lastYPosition!=0) imageView.setStartingPosition(lastXPosition, lastYPosition); // Log.i("tag", // "lastXPosition" + lastXPosition); // Log.i("tag", // "lastYPosition" + lastYPosition); // Log.i("tag", // "lastScale" + lastScale); // imageView.setRotation(45); // imageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); if (Build.VERSION.SDK_INT > 15) imageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); imageView.setImageDrawable(svg.createPictureDrawable()); ((TextView) tv).setText("Floor number: " + mNum); imageView.setBackgroundColor(Color.WHITE); // tv.setBackgroundDrawable(getResources().getDrawable( // android.R.drawable.gallery_thumb)); // imageView.setScaleType(ScaleType.CENTER); // ((GestureImageView)imageView).setScale(x); return v; } 

Ahora me gustaría agregar un pin como la imagen de abajo …

Mi problema http://www.modality.com/images/appimages/130/screens/645/large.png

Pero mi problema es que cuando hago una panorámica alrededor del marcador que agregué no está unido con la imagen SVG así dejada atrás en una cierta posición al hacer panorámica …

Aquí está mi código … NOTA: Todavía no final … Todavía estoy buscando una manera de conseguir este trabajo y estoy usando un zoom en el imageview como un mapa …

 @Override protected void onDraw(Canvas canvas) { if (layout) { if (drawable != null && !isRecycled()) { canvas.save(); float adjustedScale = scale * scaleAdjust; canvas.translate(x, y); if (rotation != 0.0f) { canvas.rotate(rotation); } if (adjustedScale != 1.0f) { canvas.scale(adjustedScale, adjustedScale); } drawable.draw(canvas); canvas.restore(); } if (drawLock.availablePermits() <= 0) { drawLock.release(); } } // ---add the marker--- Bitmap marker = BitmapFactory.decodeResource(getResources(), R.drawable.search_marker_icon); canvas.drawBitmap(marker, 40, 40, null); Paint mPaint = new Paint(); mPaint.setColor(Color.RED); canvas.drawCircle(60, 60, 5, mPaint); super.onDraw(canvas); } 

Gracias …. Soy nuevo en android 🙂 espero que pueda ayudarme ….

Mi problema

  drawable.draw(canvas); // ---add the marker--- Bitmap marker = BitmapFactory.decodeResource(getResources(), R.drawable.search_marker_icon); canvas.drawBitmap(marker, 40, 40, null); Paint mPaint = new Paint(); mPaint.setColor(Color.RED); canvas.drawCircle(60, 60, 5, mPaint); canvas.restore(); } if (drawLock.availablePermits() <= 0) { drawLock.release(); } } super.onDraw(canvas); } 

Tienes que hacer esto antes de canvas.restore …..: D tengo esta solución el año pasado …… thnx para los chicos de ayuda …. mi aplicación está casi hecho 🙂

Esta es una bonita biblioteca para mostrar imágenes, que admite el zoom / panorámica y la adición de alfileres sobre la imagen https://github.com/davemorrissey/subsampling-scale-image-view

Una implementación de un mapa HTML como elemento en una vista de Android:

  • Soporta imágenes como dibujables o mapa de bits en el diseño
  • Permite una lista de etiquetas de área en xml
  • Habilita el uso de etiquetas de área de HTML cortadas y pegadas en un recurso xml (es decir, la capacidad de tomar un mapa HTML y una imagen y usarlo con una edición mínima)
  • Soporta panoramización si la imagen es más grande que la pantalla del dispositivo
  • Soporta pinch-zoom
  • Soporta devoluciones de llamada cuando un área se pulsa.
  • Soporta mostrar anotaciones como texto de burbuja y proporcionar devolución de llamada si se hace tapping en la burbuja

Prueba este enlace encontrarás tu solución https://github.com/catchthecows/AndroidImageMap

  • Obtener otros valores de marcador
  • Google Maps elimina el menú contextual de la ruta del marcador
  • Zoom sobre la ruta específica google map
  • Cómo agregar un botón a una API v2 Google Maps
  • CursorAdapter para la actividad de GoogleMaps
  • ¿Marcador de mapa de Android?
  • Deshabilitar onMarkerClickListener completamente en Google Maps API v2
  • Problema al eliminar el elemento de clustermanager
  • Ajuste el centro del marcador en el GeoPoint
  • android marker custom infowindow
  • Marcador personalizado de Android Maps v2 tiene una posición incorrecta en el zoom
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.