2009-08-31 23 views
0

私は、ログインを試みるためにUIを表示する前にいくつかの初期設定を行うIPhoneアプリケーションを持っています。私は現在、自分のDefault.pngをイメージに設定しており、同じイメージを持つビューを持っています。私のアプリがDefault.pngの読み込みを読み込んだ後、読み込み画面が読み込まれます。読み込み画面は、MainWindow.xibのルートビューコントローラのビューです。私のアプリをロードすると、ルートビューコントローラでプログラムで作成されたタブバーコントローラが表示されます。IPhone - 読み込み中の画面からメインアプリケーションビューへのアニメーション

ロードビュー(MainWindow.xibで定義されています)と私のタブバーコントローラ(ルートビューコントローラで定義されています)の間でアニメーション化したいと考えています。私はちょうど実行しています

self.view = tabBarController.view; 

ビューを切り替えるには。 UIViewアニメーションでラップされても機能しないことに気付きました。私の質問は、どのように私はビューを切り替える必要があります。私はaddSubViewとinsertViewAtIndexを試してみましたが、どちらもアニメーションを行いますが、画面上部(既に存在するステータスバーの下)に20pxのステータスバーのギャップを残します。私は単純なものがあると仮定しますが、それが何であるか分かりません。

答えて

1

self.view = tabController.view ...あなたはどんなタイプのアニメーションをしたいですか? NavigationViewControllerの使用を検討しましたか? NavigationControllerのタックを押すと、トランジションをアニメートすることができます(新しいビューを押し込む)。ナビゲーションビューコントローラを使用せずに他のオプションを使用する場合は、UIViewControllerのpresentModalView:animatedメソッドを使用しています。また、addSubviewを使用してアニメーションを定義することもできます。アップルサイトのメトロノームのサンプルプロジェクトでは、リンクhttps://developer.apple.com/iphone/library/samplecode/Metronome/をheres。これが役に立ちますようにお願いします。

+0

アニメーションのself.view = tabController.viewを実行しないでください。私は過去の私のビューの継承に取り組んでいることに疑問を持っていました。私は基本的に私のルートビューコントローラをタブバーコントローラにしたいので、これをやっています。 addSubViewに問題がありました。つまり、ビューの上部に20pxのステータスバーのギャップがあります。 – Brian

+0

何かを掘り下げていないときに複数のビューを管理するためにNavコントローラを使用することは考えていませんでした。これは一般的なプラクティスですか? – Brian

+0

私は自分の良い練習をしないでくださいself.view =いくつかの他のビューでは... 20pxのステータスバーのギャップは、あなたのビューがrect(460のうちのいくつかと480)のためUIシステムを混乱させる。はい、私は非常に一般的な慣行は、複数のビューにドリルダウンし、どこでも使用されることがわかります – Daniel

0

Default.pngイメージで使用しているUIImageViewをメインUIビューの最上部のサブビューとして配置します。つまり、メインUIをすぐに表示しますが、その前に読み込みイメージが表示されます。次に、ローディングイメージをアニメーション化することができます。例えば、アルファプロパティを0に変更するか、トランスフォームを使って縮小します。

関連する問題