2012年3月30日金曜日

UIViewのanimation実行とキャンセル


someViewを一秒で透明化する例です。

[UIView animateWithDuration:1.0
                         animations: ^{ someView.alpha = 0.0; } ];

someViewはUIView(またはそのサブクラス)であれば何でもかまいません。

アニメーション実行中はイベントを受け付けなくなるため、このビューがイベントに応答するものだと操作性に問題がでる場合があります。

たとえば画面がタップされたらアニメーションをキャンセルし、イベントに応答できるようにするといった場合は、次の要領でアニメーションをキャンセルすることができます。

[someView.layer removeAllAnimations];

//この例の場合はalpha値を元に戻す。

someView.alpha = 1.0;

layerにアクセスするためにはQuatsCore.frameworkを追加する必要があります。

0 件のコメント: