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

Respuesta
 
Herramientas
  #1  
Viejo 14/07/13, 12:29:16
Array

[xs_avatar]
luislopez12 luislopez12 no está en línea
Miembro del foro
 
Fecha de registro: jul 2013
Mensajes: 71
Modelo de smartphone: HTC One
Tu operador: Movistar
Coordenadas con Zoom

Hola a todos, estoy desarrollando un juego en el que necesito saber las coordenadas donde pulsas en una imageview pero me han surgido dos problemas:
1.Dependiendo de la resolución del móvil donde se ejecute,estas coordenadas cambian, pero necesito que siempre sean las mismas.
2.Quiero que al hacer zoom sobre la imageview si pinchas en el mismo sitio las coordenadas sean las mismas que sin el zoom.

Tampoco he conseguido hacer zoom sobre la imageview con los dedos. ¿Alguien sabría como ayudarme? Gracias ;)
Responder Con Cita


  #2  
Viejo 14/07/13, 13:05:43
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Supongo que estás poniendo el ImageView a pantalla completa y en modo fitXY, porque si no no tendrías problemas con las distintas resoluciones.

1. Para hacer esto existen millones de formas, por ejemplo puedes calcular el % de X y el % de Y en la pantalla, y esto lo aplicas sobre la imagen. Obviamente tendrás que usar double o float. El % de X es el punto X (cuando hablo de % me refiero de 0 a 1, donde 1 es el 100%) donde pulsas en el MotionEvent Down dividido entre el getWidth() del ImageView (el % de Y es obvio). Y el punto X de la imagen correspondiente es el getWidth() de la imagen multiplicado por el X que acabas de calcular (lo mismo con el punto Y). Como te digo existen millones de formas, pero esta es una.

2. Es parecido al anterior, calcular el % de X y de Y de donde pulsas en el ImageView y luego aplicarlo sobre la imagen. Pero esta vez teniendo en cuenta el punto inicial y final de X (e Y) de la imagen en la pantalla. Es algo más complejo, y así a bote pronto no se decírtelo, tendría que calcularlo. Pero eso ya es cogerte un papel y un lápiz y empezar a hacer cálculos, que realmente es el primer paso siempre en la programación.

En cuanto a lo de hacer zoom en un ImageView, no se puede directamente, tienes que programarlo, existen ya algunas clases por ahí para hacer zoom y moverte por la imagen, incluso con doble click para alejar y acercar.

Última edición por kriogeN Día 14/07/13 a las 13:08:51.
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 14/07/13, 13:24:37
Array

[xs_avatar]
luislopez12 luislopez12 no está en línea
Miembro del foro
 
Fecha de registro: jul 2013
Mensajes: 71
Modelo de smartphone: HTC One
Tu operador: Movistar
 Cita: Originalmente Escrito por kriogeN Ver Mensaje
Supongo que estás poniendo el ImageView a pantalla completa y en modo fitXY, porque si no no tendrías problemas con las distintas resoluciones.

1. Para hacer esto existen millones de formas, por ejemplo puedes calcular el % de X y el % de Y en la pantalla, y esto lo aplicas sobre la imagen. Obviamente tendrás que usar double o float. El % de X es el punto X (cuando hablo de % me refiero de 0 a 1, donde 1 es el 100%) donde pulsas en el MotionEvent Down dividido entre el getWidth() del ImageView (el % de Y es obvio). Y el punto X de la imagen correspondiente es el getWidth() de la imagen multiplicado por el X que acabas de calcular (lo mismo con el punto Y). Como te digo existen millones de formas, pero esta es una.

2. Es parecido al anterior, calcular el % de X y de Y de donde pulsas en el ImageView y luego aplicarlo sobre la imagen. Pero esta vez teniendo en cuenta el punto inicial y final de X (e Y) de la imagen en la pantalla. Es algo más complejo, y así a bote pronto no se decírtelo, tendría que calcularlo. Pero eso ya es cogerte un papel y un lápiz y empezar a hacer cálculos, que realmente es el primer paso siempre en la programación.

En cuanto a lo de hacer zoom en un ImageView, no se puede directamente, tienes que programarlo, existen ya algunas clases por ahí para hacer zoom y moverte por la imagen, incluso con doble click para alejar y acercar.
Gracias por tu respuesta, en cuanto al imageview le he metido dentro de un frame layout porque sino me quedaban márgenes y yo quería la imagen a pantalla completa.
La verdad es que es más complejo de lo que pensaba, ;)
Responder Con Cita
  #4  
Viejo 16/07/13, 15:33:44
Array

[xs_avatar]
luislopez12 luislopez12 no está en línea
Miembro del foro
 
Fecha de registro: jul 2013
Mensajes: 71
Modelo de smartphone: HTC One
Tu operador: Movistar
He intentado hacer que las coordenadas de la zona sobre la que se pulsa del TouchImageView sean las mismas al hacer zoom pero no lo consigo, ¿alguien podría explicarme algún ejemplo?
Responder Con Cita
Respuesta

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



Hora actual: 23:41:17 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /