0

この効果は、YouTube、Fandango、iPodムービープレーヤー、Netflixアプリなど、さまざまなアプリで見られます。リストはどんどん増えていきます。ナビゲーションコントローラーのUIが表示され、映画を再生することを選択します(現在のViewControllerのボタン)、次にナビゲーションバーとView Controllerの両方が同時に画面から滑り落ち、ビデオプレーヤーが表示されます。

この効果を実現する方法を私が知っている唯一の方法は、現在のビューコントローラー(再生ボタン付き)がpresentModalViewControllerを介してロードされた場合、dismissModalViewControllerAnimated:YESを呼び出すことでうまくいきます。ただし、現在のView Controllerが右からスライドしているのがはっきりとわかるため、上記ではこれを行っていません。これは、ナビゲーションコントローラーからpushViewControllerを呼び出した結果の典型的な動作です。

何か案は?

4

1 に答える 1

1

[self presentModalViewController:moviePlayerViewController animated:YES]手始めに、最上位のコントローラーを呼び出す必要がある場合があります。あなたの場合、それはナビゲーションコントローラーになります。例えば

//moviePlayerViewControllerを初期化します
[self.navigationController
  presentModalViewController:moviePlayerViewController
                    アニメーション:はい];

ただし、このソリューションはムービーコントローラーをフェードインするだけで、ナビゲーションコントローラーのビューを邪魔にならないようにスライドさせません。そのためには、ビューを希望の方法でアニメーション化する必要があります。次の解決策をお勧めします。

UIViewControllerをプッシュするためのカスタムアニメーション

アニメーションが完了したら、ムービープレーヤーコントローラーを表示します。

于 2011-03-06T17:29:18.690 に答える