2011-12-23 5 views
4

私はiOS開発の初心者です。UINavigationViewControllerのルートビューでナビゲーションバーを非表示にしますが、他の人に表示します

私はUINavigationControllerを持っています。ユーザーがルートビューを見ている場合はナビゲーションバーを表示せず、他のビューにはナビゲーションバーを表示します。

これを行うにはエレガントな方法がありますか?その後、ストーリーボードで

答えて

12

すべてのビューコントローラ[navigationController setNavigationBarHidden: YES animated:YES];の使用のコード行を何もアニメーションはあなたがanimated:NOを行うとviewDidLoadにこのコードを追加することができます必要とされていない場合はそれ以外のviewWillAppearまたはviewDidAppear

+0

はい、私はこれについて知っていましたが、おそらくナビゲーションバーが表示されるかどうかを設定するための視点ごとの方法があるのだろうかと思っていました。私は今これを受け入れるだろうが、ありがとう。 – houbysoft

+0

あなたが[navigationController setNavigationBarHidden:YES animated:NO]と言った場合です。あなたのrootViewController上で、そして[navigationController setNavigationBarHidden:NO animated:YES];あなたの他のビューのコントローラーではありませんか? – thvanarkel

+0

ええ、私は最終的には同じ効果があると思う、それはあなたがビューを切り替えるたびにプロパティを変更することです...これは完全に動作しますが、心配しないでください。 – houbysoft

-1

、(青で概説)ルートビューを選択し、プロパティエディタ(右の)に行き、とのいずれかのオプション属性ショーがそれを隠すためにする必要があります(デフォルトはです推測された)。

+1

これが唯一のインタフェースビルダでビューのフレームを変更し、それを置きます。実際にはiOS 6ではナビゲーションバーを表示/非表示にしません。 –

+0

これは私が覚えることができるほど早い時期に当てはまります。すべてのバーは、バーの状態によって表示サイズを変えることができます。 – Heckman

関連する問題