Drag n drop textview en android

Quiero arrastrar y soltar la vista de texto en la imagen en android 2.X

Por favor, mira esta imagen a continuación. texto alternativo

Aquí, el color "Azul" representa el ViewGrop, "Blanco" es ImageView y la imagen se fija en el ImageView. El texto escrito "Moda" es un TextView.This es cómo tengo implementar la estructura. Ahora quiero permitir al usuario seleccionar el TextView y arrastrarlo a cualquier parte de la imagen y luego dejarlo sobre la imagen en la posición deseada.

A partir de ahora para una referencia he intentado referir la url siguiente pero cuando uso TextView en vez de las cosas del botón están consiguiendo anormales.

Texto del enlace

¿Puede alguien darme la hoja de ruta o el ejemplo para hacerlo?

En su lugar, intente obtener su ImageView como un lienzo para dibujar.

ImageView CanvasView = (ImageView) findViewById(R.id.fashion_pic)

Desde aquí puede crear su propio mapa de bits y volver a dibujarlo después de un TouchEvent. El fragmento siguiente contiene un trabajo necesario alrededor de un error en 2.1 (o 2.2, no puedo recordar):

 public void redrawImage() { Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.fashion_pic); Bitmap proxy = Bitmap.createBitmap(bm.getWidth(), bm.getHeight(), Config.ARGB_8888); Canvas c = new Canvas(proxy); //Here, we draw the background image. c.drawBitmap(bm, new Matrix(), null); //Here, we draw the text where the user last touched. c.drawText("Fashion", someGlobalXvariable, someGlobalYvariable, somePaint); CanvasView.setImageBitmap(proxy); } 

Aquí, ha creado un lienzo que ya tiene su imagen como fondo y pinta texto en una variable xey. Ahora, acaba de establecer un OnTouchListener:

 CanvasView.setOnTouchListener( new OnTouchListener(){ public boolean onTouch(View v, MotionEvent e) { someGlobalXvariable = e.getX(); someGlobalYvariable = e.getY(); redrawImage(); return true; } }); 

Como puede ver, el oyente actualiza automáticamente su imagen cuando se toca, y el texto seguirá el dedo del usuario. Puesto que está utilizando un mapa de bits como lienzo, también puede agregar soporte para guardar / cargar una imagen si su aplicación desea tener ese tipo de funcionalidad.

Editar: Puede ser más fácil de actuar si mueve las líneas 1-3 de redrawImage() y las coloca en otro lugar, configurando esos objetos como objetos globales. Te dejaré jugar con eso.

  • Android - Restringir arrastrar y soltar a un cuadro delimitador
  • Hacer un lienzo transparente no transparente (tratando de sustituir el aspecto predeterminado de DragShadow con arrastrar y soltar en Android)
  • Java convertir la marca de tiempo UTC a DateTime local
  • ¿Cómo obtener el comportamiento de pantalla de inicio de arrastrar a bin, en mi propia aplicación?
  • Arrastrar y soltar con onDraglistener animar para volver a la posición original si no se deja caer en el objetivo
  • ¿Cómo obtener la vista mientras arrastrar y soltar en android?
  • Cómo cancelar View.OnDragListener en android durante la operación de arrastrar?
  • Cómo escribir un InputStream potencialmente enorme para el archivo?
  • ¿Cómo se puede desplazar un "punto de destino" de Android drag-shadow de su "punto de contacto"?
  • ¿Cómo restringir el arrastrar y soltar a lo largo del eje y sólo en android?
  • Leer WCF REST fecha de android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.