Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android


 
Herramientas
  #1  
Viejo 04/08/12, 13:14:11
Avatar de ico87
ico87 ico87 no está en línea
Miembro del foro
Mensajes: 40
 
Fecha de registro: ene 2010
Mensajes: 40
Modelo de smartphone: htc magic
Mencionado: 0 comentarios
Tagged: 0 hilos
ImageView evento al pulsar

Hola

Bueno pues necesito saber para una aplicación como puedo lanzar un método al pulsar un imageView y además para el procesamiento del metodo necesito saber las coordenadas XY en las que he pulsado el imageView, pero en principio no tengo ni idea de como hacerlo.

Saludos
Responder Con Cita


  #2  
Viejo 04/08/12, 15:36:56
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
Con un OnTouchListener, el código sería más o menos así:

Código:
        img.setOnTouchListener(new OnTouchListener() {
            float x,y;
            public boolean onTouch(View b, MotionEvent arg1) {
                if( arg1.getAction() == MotionEvent.ACTION_DOWN) {
                {
                    x = arg1.getX();
                    y = arg1.getY();
                }
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 09/08/12, 14:07:46
Avatar de ico87
ico87 ico87 no está en línea
Miembro del foro
Mensajes: 40
 
Fecha de registro: ene 2010
Mensajes: 40
Modelo de smartphone: htc magic
Mencionado: 0 comentarios
Tagged: 0 hilos
perfecto, muchisimas gracias.
Responder Con Cita
  #4  
Viejo 15/08/12, 00:55:28
Avatar de ico87
ico87 ico87 no está en línea
Miembro del foro
Mensajes: 40
 
Fecha de registro: ene 2010
Mensajes: 40
Modelo de smartphone: htc magic
Mencionado: 0 comentarios
Tagged: 0 hilos
Ahora necesito lo mismo pero al arrastrar en vez de al pulsar en el ImageView y necesito conocer donde pulso primero y donde acabo al arrastrar, imagino que es algo parecido al evento de tocar, pero no se como buscar como se hace.
Saludos
Responder Con Cita
  #5  
Viejo 15/08/12, 13:34:29
Avatar de Arasthel
Arasthel Arasthel no está en línea
Cocinero veterano
Mensajes: 1,946
Compra y venta: (1)
 
Fecha de registro: jun 2009
Localización: Almería
Mensajes: 1,946
Modelo de smartphone: Nexus 5
Versión de ROM: DroidKang
Tu operador: Amena
Mencionado: 393 comentarios
Tagged: 1 hilos
Puedes modificar el código anterior:

Código:
        img.setOnTouchListener(new OnTouchListener() {
            float desdeX,desdeY,hastaX, hastaY;
            public boolean onTouch(View b, MotionEvent arg1) {
                if( arg1.getAction() == MotionEvent.ACTION_DOWN) {
                    desdeX = arg1.getX();
                    desdeY = arg1.getY();
                } else if(arg1.etAction() == MotionEvent.ACTION_UP) {
                   // este evento se usa para buscar cuándo se ha dejado de pulsar
                   hastaX = arg1.getX();
                   hastaY = arg1.getY();
                }
            }
        }
En cuanto al efecto de arrastrar el ImageView no sé exactamente cómo hacerlo, la verdad. Si alguien diese un ejemplo me sería útil a mí también.

Un saludo.
Responder Con Cita
  #6  
Viejo 16/08/12, 17:52:07
Avatar de ico87
ico87 ico87 no está en línea
Miembro del foro
Mensajes: 40
 
Fecha de registro: ene 2010
Mensajes: 40
Modelo de smartphone: htc magic
Mencionado: 0 comentarios
Tagged: 0 hilos
En cuanto al efecto, ¿te refieres a que con tu código puedes calcularlo, pero no se ve que la imagen haya sido arrastrada?
Responder Con Cita
  #7  
Viejo 16/08/12, 18:52:47
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
Cita:
Originalmente Escrito por ico87 Ver Mensaje
En cuanto al efecto, ¿te refieres a que con tu código puedes calcularlo, pero no se ve que la imagen haya sido arrastrada?
Si, con ese código no puedes saber que el dedo se está moviendo, sólo donde lo pulssas y donde lo sueltas.

Para ver el efecto de "arrastrado" tendrás que controlar también el caso MotionEvent.ACTION_MOVE.
Responder Con Cita
  #8  
Viejo 18/08/12, 13:08:44
Avatar de ico87
ico87 ico87 no está en línea
Miembro del foro
Mensajes: 40
 
Fecha de registro: ene 2010
Mensajes: 40
Modelo de smartphone: htc magic
Mencionado: 0 comentarios
Tagged: 0 hilos
Estoy probando este codigo y no me funciona, al dejar de pulsar no entra en el if del ACTION_UP, ¿no habra algo mal?

Cita:
Originalmente Escrito por Arasthel Ver Mensaje
Puedes modificar el código anterior:

Código:
        img.setOnTouchListener(new OnTouchListener() {
            float desdeX,desdeY,hastaX, hastaY;
            public boolean onTouch(View b, MotionEvent arg1) {
                if( arg1.getAction() == MotionEvent.ACTION_DOWN) {
                    desdeX = arg1.getX();
                    desdeY = arg1.getY();
                } else if(arg1.etAction() == MotionEvent.ACTION_UP) {
                   // este evento se usa para buscar cuándo se ha dejado de pulsar
                   hastaX = arg1.getX();
                   hastaY = arg1.getY();
                }
            }
        }
En cuanto al efecto de arrastrar el ImageView no sé exactamente cómo hacerlo, la verdad. Si alguien diese un ejemplo me sería útil a mí también.

Un saludo.
Responder Con Cita
  #9  
Viejo 18/08/12, 18:02:03
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
Si no devuelves true en el onTouch no te va a avisar de ningún evento posterior al ACTION_DOWN.
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Todo sobre Android > Programación y Desarrollo para Android


Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 00:50:45 (GMT +1)

Cookies settings
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007