2011-08-02 3 views
0

私のクラスの1つでは、押されたときに別のビューコントローラとビューをロードするボタンがあります。ボタンでのビューの読み込みに関するiPhoneの問題

FormController *formController1=[[FormController alloc]initWithNibName:nil bundle:nil]; 
[self presentModalViewController:formController1 animated:YES]; 

問題は、それは完全なビューをロードすることではなく、他のすべてのビューが付属してナビゲーションバー:これは私が使用するものです。私は間違って何をしていますか?

答えて

1

モーダルビューコントローラを使用しないでください。ビューをナビゲーションスタックの一部として表示するには、ビューコントローラをナビゲーションビューのスタックにロードする必要があります。

新しいモーダルビューコントローラをナビゲーションビューコントローラにする場合は、formControllerをUINavigationControllerのルートビューコントローラにして、ナビゲーションコントローラをモーダルビューコントローラとして表示します。

+0

ソートされたフレンドのコードはConfirmController * conf = [[ConfirmController alloc] initWithNibName:nil bundle:nil]; [self.navigationController pushViewController:conf animated:YES]; – Mann

+0

ビューを別のビューに表示する場合は、実際にawakeFromNib(実際にはビューを提供する)を使用して、ConfirmControllerクラスに実装する必要があります。あなたはinitWithFrameを使用しません。あなたのクラス名ConfirmControllerの名前を付けることでわかるように、このクラスは確認メッセージを表示するだけですか、それともすばらしいものです。そうなら、単純なUIView/UIAlertViewを使用することができます。 –

0

UIViewController Class Reference最初の読み:iPhoneとiPod touchのデバイスで

を、modalViewControllerのビューは 常に提示フルスクリーンです。 iPadの場合、プレゼンテーションは modalPresentationStyle プロパティの の値に依存します。

presentModalViewController:animated:が指定されたビューコントローラへ modalViewControllerプロパティを設定し、そのビューのサイズを変更し、 は、ビュー階層にこれを取り付けます。

FormControllerのnibファイルはありますか?その場合は、プロンプトをNavigation Barに設定することができます。

ビューを別のビューに表示する場合は、クラスに実装する必要があるawakeFromNib(実際にはビューが表示されます)を使用できます。 initWithFrameは使用しませんが、クラス名ConfirmControllerで確認できるように、このクラスは確認メッセージを表示するだけですか、それとも何か気になることがありますか?もしそうなら、あなたは単純なUIView/UIAlertViewを使っていました。

関連する問題