
Detectar imagen al utilizar drag and drop
Publicado por Arantxa (2 intervenciones) el 28/05/2016 18:09:12
Hola!
Estoy realizando una aplicación en android para el proyecto fin de módulo, una mascota virtual y utilizo drag and drop.
Lo utilizo para para arrastrar la imagen de comida y dárselas a la mascota y así suba el porcentaje de estado alimentación. y para la imagen jabón que cuando la acerco a la mascota sube el porcentaje de limpieza.
Mi duda es, cómo puedo difrenciar en el drag and drop qué imagen es la he seleccionado (comida / jabón) para que sume en su porcentaje correspondiente.
Pongo parte del código por si alguien me puede ayudar. Muchas gracias:
Estoy realizando una aplicación en android para el proyecto fin de módulo, una mascota virtual y utilizo drag and drop.
Lo utilizo para para arrastrar la imagen de comida y dárselas a la mascota y así suba el porcentaje de estado alimentación. y para la imagen jabón que cuando la acerco a la mascota sube el porcentaje de limpieza.
Mi duda es, cómo puedo difrenciar en el drag and drop qué imagen es la he seleccionado (comida / jabón) para que sume en su porcentaje correspondiente.
Pongo parte del código por si alguien me puede ayudar. Muchas gracias:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
private class MyDragListener implements OnDragListener {
@Override
public boolean onDrag(View v, DragEvent event) {
int action = event.getAction();
switch (action) {
case DragEvent.ACTION_DRAG_STARTED:
// do nothing
break;
case DragEvent.ACTION_DRAG_ENTERED:
iMascota.setImageDrawable(getResources().getDrawable(R.drawable.mascota_bostezando));
break;
case DragEvent.ACTION_DRAG_EXITED:
iMascota.getDrawable();
break;
case DragEvent.ACTION_DROP:
iMascota.getDrawable();
View draggedImageView = (View) event.getLocalState();
ImageView dropTarget = (ImageView) v;
ViewGroup owner = (ViewGroup) draggedImageView.getParent();
// Remove the dragged view
// owner.removeView(draggedImageView);
alimentar();
break;
case DragEvent.ACTION_DRAG_ENDED:
if (event.getResult()) { // drop succeeded
iMascota.getDrawable();
} else { // drop failed
final View draggedView = (View) event.getLocalState();
draggedView.post(new Runnable() {
@Override
public void run() {
draggedView.setVisibility(View.VISIBLE);
}
});
iMascota.getDrawable();
}
default:
break;
}
return true;
}
Valora esta pregunta


0