Abbrechen einer UIView animateWithDuration vor der Fertigstellung
Ich habe diesen code in meinem Projekt:
- (void) fadeImageView {
[UIView animateWithDuration:1.0f
delay:0
options:UIViewAnimationCurveEaseInOut
animations:^{
self.imageView.alpha = 0.0f;
}
completion:^(BOOL finished) {
//make the image view un-tappable.
//if the fade was canceled, set the alpha to 1.0
}];
}
allerdings gibt es Umstände, in denen ich möchte, um diesen Vorgang abzubrechen, bevor die Bildansicht ist unsichtbar geworden. Gibt es eine Möglichkeit zu stornieren, diese animation Mitte der animation?
InformationsquelleAutor der Frage Sean Danzeiser | 2012-08-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Update: bevorzugen diese Antwort https://stackoverflow.com/a/21527129/194309 von Borut Tomazin
InformationsquelleAutor der Antwort Thunder Rabbit
Zunächst müssen Sie UIViewAnimationOptionAllowUserInteraction option wie..
und dann eine Methode wie diese....
danach wenn Sie möchten, entfernen die animation, call-oben-Methode verwenden .....
Hoffe, es wird Ihnen helfen,
Happy coding.........!!!!!!!!!!!! 🙂
EDIT:
Dank user1244109, um mich für diese.
Für iOS7 fügen wir eine weitere option
UIViewAnimationOptionBeginFromCurrentState
wie:InformationsquelleAutor der Antwort Nirav Gadhiya
Von Apple docs: Verwendung dieser Methode wird davon abgeraten, das in iOS 4.0 und höher. Verwenden Sie stattdessen die
animateWithDuration:delay:options:animations:completion:
Methode, um anzugeben, Animationen und Animations-Optionen.:InformationsquelleAutor der Antwort Borut Tomazin