2009-02-07 9 views
10

Por lo que puedo decir, el marco multitáctil de iPhone envía la ubicación de cada toque, pero no el tamaño.¿Puede el iPhone detectar el tamaño de un toque?

Quiero permitir que el usuario toque un botón con la punta de su pulgar, o que coloque la almohadilla de su pulgar sobre varios botones (no UIButtons reales) y que mi código de seguimiento táctil se dé cuenta de que necesita presionar todo botones el pulgar ha terminado.

Respuesta

5

Dado que UITouch maneja el tacto y no se dice nada sobre el tamaño, yo diría que no, no puede. Es mejor que intente con otro enfoque como un arrastre ...

+0

arrastre puede ser una buena idea. Haga que no deje de presionar el primer botón hasta que termine su arrastre para poder presionar el botón A, arrastrar hasta el botón B y se presionan ambos. Podría intentar esto. –

0

No, eso no es posible con UIKit.

3

Estoy bastante seguro de que el hardware obtiene una lectura muy precisa del área tocada, pero el firmware del iPhone no brinda esta información al desarrollador. Como dijo CiNN, UITouch simplemente no proporciona esta información.

Sin embargo, el hardware es el mismo que en los viejos productos Fingerworks.com que realmente proporcionaban los datos táctiles reales al desarrollador. Entonces, quizás en una versión del sistema operativo (mucho más tarde), se proporcionarán perfiles de superficie táctil. ¡podría ser útil!

15

Todas estas respuestas son incorrectas. El hecho de que Apple no parece sancionar esto en las aplicaciones en la tienda es una cuestión diferente.

float vf = 10.0; 
id valFloat = [thisTouch valueForKey:"pathMajorRadius"]; 
if(valFloat != nil) { 
    vf = [valFloat floatValue]; 
} 

Realmente deseo que los usuarios y desarrolladores se esfuercen más.

+0

'valueForKey:' no es técnicamente una API privada, ¿o sí? Simplemente te permite desenterrar valores privados ... ¿Es genial o no genial con las capacidades de la tienda de aplicaciones? –

+1

Me gusta tu forma de pensar. :-) ¡Avíseme si aprueba su aplicación con esa explicación y mi aplicación vuelve a enviarse al día siguiente! (El problema es la propiedad "pathMajorRadius", valueForKey es un medio público legítimo de evitar un enlace dinámico. No se accede a esta información privada estáticamente, y de hecho, puede que solo termine leyéndola a través de ... raro ... . y umm ... ruta compleja.) – Rob

+0

Yo también, deseo tener acceso a esto. Haría mucho más fácil la programación de los reconocimientos de gestos estilo "flick". Espero que ese no sea el "punto" para restringir esto. – StCredZero

Cuestiones relacionadas