2010-07-02 13 views

risposta

25

Sì, questo è facile:

quando si configura l'animazione

[UIView setAnimationDelegate:self]; 
[UIView setAnimationDidStopSelector:@selector(myAnimationStopped:finished:context:)]; 

e definire il metodo come:

-(void)myAnimationStopped:(NSString *)animationID 
       finished:(NSNumber *)finished 
        context:(void *)context { 
    // fancy code here 
} 

non deve essere self e quel metodo, di corso.

+0

grazie - stavo guardando attraverso tutti i metodi, non posso credere che ho perso uno – Slee

+1

haha ​​oldschool ^^ Vai per la risposta successiva questo non viene utilizzato più – Macistador

+1

Sì, è più che 4 anni ora ... – Eiko

37

I blocchi di animazione sono stati introdotti in iOS4. Apple ti consiglia di usarli e i nuovi metodi richiedono principalmente blocchi di completamento che sostituiscano i callback. Per esempio:

[UIView animateWithDuration:0.5f 
         delay:0.0f 
        options:UIViewAnimationCurveEaseInOut 
       animations:^{ 
        [myView setAlpha:0.0f]; 
       } 
       completion:^(BOOL finished) { 
        [myView removeFromSuperview]; 
       }]; 
Problemi correlati