2012-05-08 24 views
0

modalviewcontrollerを終了するためのカスタムアニメーションコードを配置する場所はどこですか。dismissModalViewControllerのカスタムUIViewアニメーション

私はviewdiddisappearに次のように入れてみましたが、viewwilldisappearは正しく動作しません。何かご意見は?ありがとう!

[UIView beginAnimations:@"suck" context:NULL]; 
[UIView setAnimationDuration:1.0]; 
[UIView setAnimationTransition:103 forView:self.navigationController.view cache:YES]; 
[UIView setAnimationPosition:CGPointMake(260, 431)]; 
[UIView commitAnimations]; 
+0

**発信** UIViewControllerを変更しようとしていますか?私はあなたがそれに影響を与えることはできないと思います。希望の効果は何ですか? – mbm29414

+0

お世話になりました。私はゴミ箱のようにモーダルビューを却下しようとしています(写真アプリとメールアプリのエフェクトに似ています)。問題は、このアニメーションを行うときに、モーダルビューの上にレイヤーを作成し、そのレイヤーでアニメーションを実行することです。しかし、効果の後には、モーダルビューが表示されます。 – chourobin

+0

その後、アニメーションを行い、完了ブロックで 'dismissModalViewControllerAnimated:NO'を呼び出します。それは多かれ少なかれすぐに 'UIViewController'を取り除くでしょう。 – mbm29414

答えて

2

これを試してみてください:

UIViewController *myController = [[[MyViewController alloc] init] autorelease]; 
UIViewAnimationTransition transition = UIViewAnimationTransitionCurlUp; // or whatever effect you want 
[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationTransition:transition forView:[self window] cache:YES]; 
[navController presentModalViewController:myController animated:NO]; // or dismissModalViewController in your case 
[UIView commitAnimations]; 
+0

ご協力ありがとうございます!残念ながらそれを直ちに却下すると、画面上のアニメーションが取り除かれます。 – chourobin

関連する問題