2009-03-23 10 views

Répondre

1

Placez votre image dans une UIImageView, puis sous-classez cette vue et remplacez touchesBegan: withEvent: ou définissez un délégué pour elle et implémentez la même méthode qu'une méthode déléguée. Cela vous donnera la possibilité de répondre à des événements tactiles (le début d'un contact, dans ce cas, bien que vous puissiez faire la même chose pour terminer un contact ou déplacer le doigt).

Dans cette méthode tactile, vous pouvez implémenter quelque chose de similaire à ce que je décris here afin d'effectuer une rotation Core-Animation de votre UIImageView à une vitesse donnée. Pour modifier la vitesse, modifiez la propriété duration sur l'animation que je fournis. Comme je le suggère ici, vous pouvez regarder dans un CAKeyframeAnimation pour faire une animation plus lisse avec l'accélération et la décélération au début et à la fin.

0

En utilisant Cocos2d, vous ne pouvez pas « toucher » a permis sprites, « isTouchEnabled » est au niveau de la couche. Vous devrez recevoir le contact au niveau de la couche, puis vérifiez l'emplacement du contact par rapport à l'emplacement de l'image-objet touchable. Les fonctions CGRect * incluent un 'rect contains point' auquel vous pouvez passer l'emplacement tactile, avec le rectum de l'image-objet pour voir s'il a été 'touché', et quel point vous pourriez alors dire [sprite runAction: [Tourner .... ]]

Questions connexes