2013-01-20 8 views
9

Animuję kod UIView, używając poniższego kodu. Działa to świetnie, ale w jaki sposób mogę je animować w tym samym czasie, chciałbym, aby skalowalo się do 0 podczas wirowania.Sposób skalowania i obracania podczas pojedynczego animowania z wywołaniem usługi

[UIView animateWithDuration:0.4 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut 
       animations:^(void) { 
        recognizer.view.transform = CGAffineTransformMakeRotation(DegreesToRadians(540)); 
        recognizer.view.backgroundColor = [[UIColor alloc] initWithRed:220.0/255.0 green:220.0/255.0 blue:220.0/255.0 alpha:1.0]; 
       }]; 

Odpowiedz

11

Po prostu użyj metody CGAffineTransformConcat. Wypróbuj:

[UIView animateWithDuration:0.4 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut 
       animations:^(void) { 
        recognizer.view.transform = CGAffineTransformConcat(CGAffineTransformMakeRotation(DegreesToRadians(540)), CGAffineTransformMakeScale(1.0, 1.0)); 
        recognizer.view.backgroundColor = [[UIColor alloc] initWithRed:220.0/255.0 green:220.0/255.0 blue:220.0/255.0 alpha:1.0]; 
       }]; 

Nadzieję, że pomaga!

Powiązane problemy