Volevo ruotare un UIView sul suo asse orizzontale per 360 gradi e quindi aggiornare il contenuto nella vista. Stavo cercando soluzioni su questo. Ho trovato una coppia qui e là. Questo è quello con cui sono uscito.Ruota un UIView sul relativo asse X (asse orizzontale)
[UIView animateWithDuration:1 delay:0 options:UIViewAnimationOptionTransitionNone animations:^{
self.tableView.layer.transform = CATransform3DMakeRotation(M_PI,1.0,0.0,0.0);
} completion:^(BOOL finished){
NSLog(@"Finished first pi");
[UIView animateWithDuration:1 delay:0 options:UIViewAnimationOptionTransitionNone animations:^{
self.tableView.layer.transform = CATransform3DMakeRotation(M_PI,1.0,0.0,0.0);
} completion:^(BOOL finished) {
NSLog(@"Finished second pi");
}];
}];
Questo inverte la vista ma solo di 180 gradi. Voglio girarlo ancora una volta in modo che possa vedere normalmente la vista.
Entrambi i miei NSLogs vengono visualizzati uno dopo l'altro. Sono sicuro che mi manca qualcosa qui. Qualsiasi aiuto sarebbe utile ..
Grazie
Non è necessario impostare la 'transform' sul' CALayer' direttamente in questo caso, si può semplicemente impostare il 'transform' sul' UIView', anche se è un diverso tipo 'struct' - un' CGAffineTransform'. –
Questo è corretto. Volevo solo fare un esempio. Io uso sempre la trasformazione su UIView. – jaminguy