2013-01-09 12 views
7

Devo dare un'animazione miniatura di eliminazione nella mia applicazione ipad proprio come le applicazioni iphone/ipad eliminare l'effetto. Qualsiasi organismo Help me please campione Photo è attaccato enter image description hereCome aggiungere l'effetto cancella come l'applicazione iphone?

Se avete bisogno di ulteriori dettagli, allora gentilmente parlare nei commenti

risposta

7

ho fatto questo utilizzando CGAffineTransformMakeRotation. Non so che esiste un altro metodo migliore. Ma quello che ho fatto è la mia logica, puoi copiarlo così com'è e hai solo bisogno di aggiungere un pulsante di cancellazione nella parte superiore sinistra di quella vista. Nel seguente codice sto solo animando la miniatura o qualsiasi vista proprio come fa iPad sulla sua schermata principale. Una cosa, devi dichiarare la direzione int a livello globale. e ogni volta che chiamerai questo metodo, imposterai direction = 1;

-(void)shakeToDelete:(UIView *)shakeMe 
{ 

    [UIView animateWithDuration:0.1 animations:^ 
    { 
     shakeMe.transform = CGAffineTransformMakeRotation(0.05 * direction); 
    } 
        completion:^(BOOL finished) 
    { 

     direction = direction * -1; 
     [self shakeToDelete:shakeMe]; 
    }]; 
} 

/// modificare ho provato in questo modo e ottenuto che funziona nella mia schermata di esempio, come allegato in foto enter image description here

+1

Grazie @Umair ho ottenuto che funziona perfettamente e facilmente. Funziona alla grande – Mashhadi

+0

Se dobbiamo animare tutti i pulsanti, dovremmo passare tutti i pulsanti in una matrice e funzionerà per tutti i pulsanti su quella vista. questo è ottimo – Mashhadi

+0

@Mashhadi ciao amico puoi aiutarmi a creare questo animato non chiaro come dare tutto animato sul pulsante miniatura il mio pulsante creare secondo il valore dell'immagine dell'array e visualizzare su scrollview -thank – Rocky

0

È meglio si dovrebbe utilizzare un autoreverse e cappio animazione, causa la creazione di animazioni più e più volte soddisferà la memoria del telefono.

Con questo codice, viene mantenuta solo un'animazione.

view.transform = CGAffineTransformMakeRotation(-kDeleteAnimationAmplitude); 

[UIView animateWithDuration:0.1 delay:0 options:UIViewAnimationOptionRepeat|UIViewAnimationOptionAutoreverse animations:^{ 
    view.transform = CGAffineTransformMakeRotation(kDeleteAnimationAmplitude); 
} completion:nil]; 

Poi, se si desidera interrompere l'animazione, basta chiamare:

[view.layer removeAllAnimations]; 
Problemi correlati