ページ 1 / 1
iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月10日(月) 19:37
by 裕美
通常は下記のように書いていて右にスライドされます。
[self.navigationController pushViewController:view animated:YES];
ここのサイトの一番上の画像(真ん中)のようなターン?をする遷移方法などを知りたいです。
http://ameblo.jp/xcc/entry-10179545575.html
調べてみたのですが見つからなかったのでこちらで質問させて頂きました。
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月11日(火) 00:33
by Justy
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月13日(木) 01:53
by 裕美
お礼が遅くなってしまいすみませんでした。
参考になるURLをありがとうございます。
キチンとした名称があるのですね(汗)
下記のコードを追加しました所回転させることが出来ました。
しかし問題が御座いまして回転させることが出来たのですがViewの切り替えが出来ません。
アニメーションの途中でViewの変更をするにはどうすれば良いのでしょうか?
コード:
- (void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath {
〜略〜
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.75];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];
[UIView commitAnimations];
// [self.navigationController pushViewController:viewActive animated:NO];
[viewActive release];
}
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月13日(木) 18:46
by 裕美
私のソースの仕様ではできないのでしょうか?
色々なサイトを見てみますとViewをPushするのではなくViewを重ねてる?様な感じのサイトを見ました。
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月13日(木) 23:43
by Justy
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月14日(金) 00:41
by スー
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月14日(金) 10:06
by 裕美
お二方とも回答ありがとうございます。
>>self.viewを変化させる
navigationcontrollerのViewをpushして別のViewに切り替えてきたのですがこの方法では出来ないということでしょうか?
URLのソースをみると変化後のView(newView)を用意してそれを変えてるみたいなのですがよく理解できませんでした。
アニメーションが終ったのを確認してからnavigationcontrollerのViewをpushの
アニメーションをオフにいして切り替えれば行けると思っておりました。
本当に申し訳ないのですがURLのソースをみても理解できませんでした・・・。
ソースなどを書いては頂けないでしょうか。
>>スー様
URLをありがとうございます。
閲覧してみたのですがやはり理解できませんでした。
私のソースではIBを使っておりません。
Re: iPhoneアプリで画面遷移のアニメーションを変更したいです
Posted: 2011年1月15日(土) 02:02
by Justy
裕美 さんが書きました:ソースなどを書いては頂けないでしょうか。
いいサンプルがあります。
BubbleLevel
http://developer.apple.com/library/ios/ ... Intro.html
LevelViewController.mのflipActionでトランジション処理を指定しています。
裕美 さんが書きました:navigationcontrollerのViewをpushして別のViewに切り替えてきたのですがこの方法では出来ないということでしょうか?
はい。
カードがひっくり返るようなフリップアニメーションをしたいのであれば、
Core Animationを使う必要がありますのでその方法では出来ません。
pushViewControllerを使うやり方はあくまで UINavigationControllerへの指示で、
今ある viewをプッシュして別の画面を出し、再び元の viewに戻ってくることを前提としています。
しかし、このフリップアニメーションは戻ってくることを前提としておらず、
且つ UIViewレベルで行うアニメーションですので、方式が異なります。
Core Animationに関する基本的な概念を理解した上で、先のページを見直すなり
BubbleLevelの挙動を調べることで概ね理解できるんじゃないかと思います。