Utilizzando la seguente animazione UIView con CATransform3DMakeRotation, metà della UIView scomparirà durante la trasformazione e riapparirà al termine. Ciò accade solo quando esiste una UIImageView dietro l'UIView nella gerarchia della vista del generatore di interfacce.CATransform3DMakeRotation nasconde metà della visualizzazione UIV durante l'animazione
[UIView animateWithDuration:1.0 delay:0.0 options:nil animations:^{
myView.layer.transform = CATransform3DMakeRotation(M_PI,0.0,1.0,0.0);
} completion:nil];
Quello che segue è il layout di visualizzazione in Interface Builder
E il risultato animazione qui sotto.
La seconda immagine è prima di ogni animazione ha avuto luogo, la metà sinistra scompare. Dopo che si è ristretto, poi è cresciuto oltre il punto centrale, il lato destro (il lato sinistro precedente) riappare come mostrato nella quarta immagine.
Quando l'immagine di sfondo viene impostato utilizzando
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"jeans.png"]];
L'animazione completa come previsto.
Questo funziona bene anche quando non c'è UIImageView dietro. –
Spiegare cosa si sta cercando di ottenere ... Dalle immagini, vedo che si tratta di un comportamento normale, visto che si sta ruotando sull'asse Y – Mazyod
Le immagini di middle 2 sono all'inizio e alla fine dell'animazione, non appena l'animazione inizia, il lato sinistro scompare prima di qualsiasi cambiamento di larghezza. Riappare solo dopo che l'animazione è stata completata. Se questo lo rende più chiaro? –