90度回転をtransformに設定した後、拡大を設定すると
90度回転はなかったことになってるので注意。
回転した状態で拡大する場合はCGAffineTransformConcatで
transformを合成して設定する必要がある。
ちなみに
animeView.transform = CGAffineTransformIdentity;で初期状態にもどる
*3/1修正 回転も拡大縮小も中心起点だった;
アフィン変換いまいちわかってないなー。
-(void)startAnime:(UIView*)animeView{
//開始前に縮小しておく
animeView.transform = CGAffineTransformMakeScale(0.1, 0.1);
//アニメーション設定開始
[UIView beginAnimations:nil context:NULL];
//アニメーションの秒数
[UIView setAnimationDuration:0.3];
//動きの設定
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
//delegate設定(endAnimeがいらないならnilでOK)
[UIView setAnimationDelegate:self];
//アニメーション終了後にやりたい処理
[UIView setAnimationDidStopSelector:@selector(endAnime)];
//90度回転しながら元の大きさに拡大
CGAffineTransform transform1,transform2;
transform1 = CGAffineTransformMakeRotation(M_PI * 90 / 180.0f);
/*
//ちなみに移動はこれ
transform1 = CGAffineTransformTranslate(transform1, 128, 128);
*/
//拡大
transform2=CGAffineTransformMakeScale(1.0, 1.0);
//transformの合成
CGAffineTransform concat =
CGAffineTransformConcat(transform1, transform2);
//transformの適用
[animeView setTransform:concat];
//アニメーション設定終了
[UIView commitAnimations];
}
-(void)endAnime{
//アニメーション終了後にやりたい処理を書く
}