Tweener と UIView アニメーションの比較
こんにちは。
弊社クライアントワークチームからBMSPに移動して、Flasherからスマホエンジニアに転職した堀口です。
さて、iPhoneで画像(等)をtweenさせたくて調べました。
Tweenerみたいなライブラリがあるのかなーと思ってましたが
UIViewという、FlashでいうところのSpriteみたいなクラスがアニメーションさせる機能を持ってましたよ!
せっかくなのでFlasher向けにTweenerとの比較をまとめます。
ちなみに、この書き方はiOS4からなので、アプリの対応バージョンに気をつけてください。
TweenerとUIViewのアニメーション比較
画像を(0,0)から(0,100)へ1秒かけて移動させます。Tweener(AS3)
var sprite:Sprite = new Sprite(); sprite.addChild(fugaImage);//fugaImageはなにか画像が入っているということで sprite.x = sprite.y = 0; hoge.addChild(sprite);//hogeは既に表示リストに追加されているということで Tweener.addTween(sprite, {x:100, time:1});
UIView(Objective-C)
UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"fugaImage.png"]];//fugaImageを読み込んで、画面に表示できる状態に imageView.transform = CGAffineTransformMakeTranslation(0, 0); [hoge addSubview:imageView];//hogeは既に画面に表示される状態ということで [UIView animateWithDuration:1.0f animations:^{ imageView.transform = CGAffineTransformMakeTranslation(100, 0); }];
どちらも簡単ですね。
もちろん、completeしたタイミングで次の処理を走らせたりって事も出来ますよん。
ではでは。