2011-10-21 19 views
6

Estoy trabajando en una aplicación que permite a los usuarios pedir elementos desde un widget de la Galería. El usuario debe tener la capacidad de seleccionar un pedido del widget Galería. Los pedidos deben mostrarse como imágenes en la Galería y el usuario debe tener la capacidad de arrastrar una imagen y colocarla en el botón de pedido.Arrastrar y soltar imágenes de la galería de Android

Estoy atascado con la parte de arrastrar y soltar. ¿Cómo puedo arrastrar y soltar imágenes usando el widget Galería en Android?

+0

hola quiero lo mismo en mi proyecto si obtendrá cualquier solución amablemente solicitar la publicación. –

+0

hola. ¿Encontraste alguna solución? – SoH

Respuesta

1

nunca hizo esto así que no puedo decir con seguridad, pero aquí es cómo iba a abordar el problema:

que se extendería la galería existente. A continuación, anule el método onDown o algo similar para poder detectar qué imagen se toca.

Luego mostraría una nueva vista de imagen con la imagen donde está el dedo, que escucha el evento tocado.

y luego en contacto, puede ver dónde cayó el componente.

-

También podría ser una buena idea para escribir su propia galería rápida en un panel de desplazamiento, de esta manera usted tiene mucho control mor sobre los acontecimientos;)

Saludos

Jason

+0

Mismo uso de la base en mi proyecto, tomo el conjunto de imageview y lo arreglo en linearlayout y le doy el desplazamiento horizontal ... pero quiero arrastrar y colocar en la galería o algo así .Drag & Drop Posible en ListView https://github.com/commonsguy/cwac-touchlist –

1

Un enfoque es extender Galería e implementar AdapterView.OnItemClickListener.

Su acción de arrastre podrían implementarse como:

@Override 
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, 
     long id) { 
    if (!view.isTouched()) { 
     return false; 
    } 
    customDragController.startDrag(view, this, view, CustomDragController.MOVE); 
    return true; 
} 

Para un ejemplo más completo de cómo esto puede llevarse a cabo incluyendo un customDragController favor echar un vistazo a this proyecto github.