J'ai un UISLider en cours d'animation, qui traverse l'écran sur une période de 91,0 secondes. Je voudrais être en mesure d'arrêter le spot d'animation.Arrêt d'une animation sur place
le code:
[UIView animateWithDuration:91.0
delay:0.0
options:UIViewAnimationOptionRepeat|
UIViewAnimationOptionAllowUserInteraction|
UIViewAnimationOptionBeginFromCurrentState
animations:^{[UIView setAnimationDuration:91.0];
[myUISlider setValue:91.0];}
completion:nil];
[UIView commitAnimations];
- un moyen d'arrêter une animation fixe une nouvelle valeur. Cependant, je ne peux pas lire la valeur actuelle/la position du curseur PENDANT l'animation. lors de l'accès mySlider.value i obtenir la valeur cible (où l'animation se terminera, à savoir 91.
je fait quelques recherches et suis tombé sur le drapeau continue qui lance une méthode d'action et la configuration jusqu'à OUI par défaut à partir de la référence développeur:..
« ... si OUI, le curseur envoie des événements de mise à jour en permanence à la méthode d'action de la cible associée ... »
cependant, la valeur ici est, encore une fois, 91,0 ...
merci vous pour votre temps.
le vôtre,
~ nir.
merci pour votre réponse tjw. suite à votre suggestion, j'ai trouvé que cette classe fournit des informations sur la couche elle-même. par exemple, j'ai pu extraire la position.x et la position.y du curseur mais pas la valeur actuelle du curseur lui-même. pensées? –
Oups, j'ai l'impression d'avoir mal compris votre question. Peut-être pouvez-vous modifier votre question pour montrer comment vous contrôlez la vitesse d'animation de la valeur. Vous appelez vraisemblablement -setValue: animated:, mais cela ignore la durée définie dans tout bloc d'animation UIView englobant. – tjw
merci TJW, je viens de ré-éditer le poste et ajouté du code. J'espère que ce sera plus clair maintenant ce que j'essaie d'atteindre. Merci pour votre temps. –