2010-01-18 11 views

Répondre

3

Oui. Voir les méthodes sur UIView du nom touches*, en particulier:

- (void)touchesMoved:(NSSet*)touches withEvent:(UIEvent*)event 

Il est appelé quand un mouvement (« slide »?) Est détectée, et ne souffre pas d'être « dupe » par de multiples touches rapides. Vous pouvez obtenir les coordonnées de la position du doigt courant dans la vue et le moment où l'événement ocurred:

UITouch *touch = [touches anyObject]; 
CGPoint inFrameCoordinate = [touch locationInView:self]; 
NSTimeInterval timestamp = [touch timestamp] 

obtenir la distance et le temps entre deux coordonnées pour calculer la vitesse.

0

Eh bien, UITouch a des propriétés pour l'emplacement et l'horodatage; En utilisant ces propriétés, vous pouvez calculer la "vélocité" du toucher entre deux événements tactiles.

Cela ne fonctionnera que pour les touches simples, bien sûr, et vous devrez peut-être lisser les résultats. En outre, l'utilisateur peut être en mesure de vous "tromper" en tapant rapidement avec deux doigts alternativement ;-)