2016-06-23 20 views
3

ナビゲーションコントローラに埋め込まれていないビューコントローラ(実際にはビューコントローラ)にナビゲーションバーを追加するにはどうすればよいですか?ナビゲーションバーをビューにドラッグしようとしましたが、ちょうど固執していません。これはSwiftにあります。ナビゲーションコントローラを使用しないビューコントローラにナビゲーションバーを追加

+0

私はXcodeでこれをやらせることはできませんが、コードで挿入しようとするとうまくいくはずです。 – Skoua

答えて

4

あなたviewDidLoadにこのコードを入れてみてください:

let height: CGFloat = 75 
let navbar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: UIScreen.mainScreen().bounds.width, height: height)) 
navbar.backgroundColor = UIColor.whiteColor() 
navbar.delegate = self 

let navItem = UINavigationItem() 
navItem.title = "Title" 
navItem.leftBarButtonItem = UIBarButtonItem(title: "Left Button", style: .Plain, target: self, action: nil) 
navItem.rightBarButtonItem = UIBarButtonItem(title: "Right Button", style: .Plain, target: self, action: nil) 

navbar.items = [navItem] 

view.addSubview(navbar) 

collectionView?.frame = CGRect(x: 0, y: height, width: UIScreen.mainScreen().bounds.width, height: (UIScreen.mainScreen().bounds.height - height)) 

heightは、もちろん、あなたが望む何もすることができます。 UIBarButtonのアクションは、必要な機能を選択するセレクタです。 (ボタンはまったく必要ありません)。

編集:それはUINavigationBarと重ならないようにcollectionViewのフレームを調整

  1. 高さを一定にして、すべての参照を1か所で変更できるようにしました。
+0

これはインタフェースビルダーの権利ではできません。 – Prabhu

+0

@Prabhu通常のUIViewControllerを使用し、それを 'UICollectionViewDataSource'' UICollectionViewDelegate'に拡張し、デフォルトの 'UICollectionViewController'クラスとIB Objectを使うのではなく、コレクションビューをドラッグすることができます。 – Ike10

+1

また、私の編集@Prabhuを参照してください – Ike10

関連する問題