スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
このエントリーをはてなブックマークに追加

[iOS]連続アニメーション(と、その他アニメーション例)

たとえば横に広げてから縦に展開するようなUIViewのアニメーションを作りたい場合です。
2つ以上のアニメーションを組み合わせる際に、どのようにすればいいのか。

答えは、アニメーション終了時の呼び出しメソッドの指定にあります。
[C開発者によるiPhoneプログラミング]
連続アニメーション

詳しくは上記URLに方法が載っています。

ソースに起こしてみると、理解が深まります。
たとえばこのように用意するといいのではないでしょうか?

-(void)RectAnimationView:(UIView *)_target_view:(CGRect)_rect:(SEL)_anime_thread{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:_anime_thread];
// imgViewはUIImageViewのインスタンス
_target_view.frame = _rect;
[UIView commitAnimations];
}

-(void)test_selector{
CGRect tmp_rect = CGRectMake(0,20,self.view.frame.size.width,2+100);
SEL tmp_sel = nil;
[self RectAnimationView:test_view
:tmp_rect
:tmp_sel];
}

利用例はこんな感じ

test_view = [[UIView alloc]init];
test_view.frame = CGRectMake(0,20,1,2);
test_view.backgroundColor = [UIColor redColor];
[self.view addSubview:test_view];
CGRect tmp_rect = CGRectMake(0,20,self.view.frame.size.width,2);
SEL tmp_sel = @selector(test_selector);
[self RectAnimationView:test_view
:tmp_rect
:tmp_sel];


○おまけでその他基本アニメーションの説明リンク貼っておきます。
[サルにもできるiPhoneアプリの作り方]
開発基礎トレリターンズ1:基本アニメーション公式集

・移動
・拡大/縮小
・回転
・透明化/不透明化

の4つが紹介されています。

追記:
[iPhoneメモ]
連続アニメーションのメモリ枯渇

何度もアニメーションを呼ぶとメモリが足りなくなるそうな。
なんでだろう?アニメーション終了処理がsetAnimationDidStopSelectorの処理後なのだろうか。
このエントリーをはてなブックマークに追加

コメントの投稿

非公開コメント

Translation


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
プロフィール

チーズくん

Author:チーズくん
個人的メモをただ羅列しています。
twitter:@cheese1038

バロメーター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。