8

xibsでこれを行う方法についてのチュートリアルが見つからない前に、ストーリーコードを使用してナビゲーションコントローラーをサブクラス化しただけです。

ナビゲーションコントローラーを特定のxibに追加して、サブクラス化するにはどうすればよいですか?次に、ビューの回転をオーバーライドできます。私が立ち往生している部分は、ビューコントローラーがナビゲーションコントローラーについてどのように知っているかです。ストーリーボードでは、手動でViewControllerに接続します。私はxibsでそれを解決することはできませんか?

ビューxibの横にナビゲーションコントローラーを追加しました...ここからアドバイスが必要です。

また、元のiPhonexibsからiPadビューを作成しました。ナビゲーションコントローラーをIBからドラッグしても、iPhoneの画面サイズのままですか?

4

2 に答える 2

8

UINavigationControllerxib は 1 つの画面のみを表すため、ストーリーボードの場合と同じ方法で xib ファイルに aを設定する必要はありません。通常は alloc/init aUINavigationControllerと aUIViewControllerを実行し、View Controller を表示する前に Navigation Controller のルートとして設定します。アプリ全体を最初からナビゲーション コントローラーにラップする場合は、アプリ デリゲートでこれを行うことができます。

ストーリーボード以外のアプリのアプリデリゲートでは、次のようなものが必要です

self.navigation = [[UINavigationController alloc] initWithRootViewController:[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil]];

[self.window makeKeyAndVisible];

self.window.rootViewController = self.navigation;

App Delegate に属するプロパティまたは iVarself.navigationはどこにありますか。UINavigationControllerビュー コントローラーを xib で適切に設定する場合は、xib でルート ビューを選択し、属性インスペクター (RHS、小さな盾のように見えるもの) を開き、「トップ バー」で「ナビゲーション バー」を選択します。ドロップダウンメニュー。これにより、xib にナビゲーション コントローラーのトップ バーが表示されるので、それに応じて他のビューを配置できます。

編集

これは完全に正しいとは言えません。ナビゲーション コントローラーは xib ファイルで作成できますが、ビジュアル要素がほとんどなく、コードで非常に簡単に設定できるため、価値があるよりも手間がかかると常に考えていました。

このチュートリアルの詳細については、こちら

http://www.iosdevnotes.com/2011/03/uinavigationcontroller-tutorial/

于 2012-12-18T11:48:23.020 に答える
0

ナビゲーション コントローラーの回転をオーバーライドする場合は、回転メソッドをオーバーライドする UINavigationController サブクラスを作成するだけで、P-double のコードを使用して、呼び出しの代わりに の[UINavigationController alloc]ようなものを呼び出す必要があります[MyNavigationController alloc]。オブジェクト指向プログラミングの驚異。

于 2012-12-18T11:54:53.023 に答える