J'ai plusieurs UIImageViews
dans un UIScrollView
que je veux faire bouger lorsque l'utilisateur appuie longuement sur l'un d'eux. Si similaire au comportement que vous obtenez lorsque vous appuyez longuement sur une icône du menu de votre iPad/iPhone.
J'ai donc ce qui suit:
- (void)startWiggling {
for (UIImageView *touchView in [scrollView subviews]) {
[UIView beginAnimations:@"wiggle" context:nil];
[UIView setAnimationDuration:0.1];
[UIView setAnimationRepeatAutoreverses:YES];
[UIView setAnimationRepeatCount:FLT_MAX];
//wiggle 1 degree both sides
touchView.transform = CGAffineTransformMakeRotation();
touchView.transform = CGAffineTransformMakeRotation(-0.0174532925);
[UIView commitAnimations];
}
}
- (void)stopWiggling {
NSLog(@"Stop wiggling");
}
Cela fonctionne bien. Le problème est ... Comment puis-je faire arrêter se tortiller après que l'utilisateur a appuyé sur un bouton? J'ai un bouton et je l'ai connecté, etc. et il atteint la méthode stopWiggling
, donc ça va. Mais alors...
UIImageViews
? #import <QuartzCore/QuartzCore.h>
puis
[myView.layer removeAllAnimations];
ou
[self.view.layer removeAllAnimations];