ナビゲーションバーの左右のボタンを設定するのはとても簡単だ。
しかし、ちょっと凝ったことをしようとすると、なかなか悩ましいところだ。

例えばこのように。
navigation_customview_1

今回は、ナビゲーションバーの右ボタンにカスタムViewを設定してみる。 
 
まずはStoryboardでNavigationControllerを設定しよう。
navigation_customview_2
Storyboardの出番はここで終了だ。
ここからはコードがメインとなる。

VIewControllerで以下のようにviewDidLoad()にコードを追加しよう。

1.今回作るカスタムViewの土台だ。
 わかりやすくするために背景を赤にしてある。
2.ここがキモだ。
 UIBarButtonItemにカスタムViewを渡すことでカスタムViewをボタンに設定できる。

それでは実行してみよう。
navigation_customview_3
期待通りの結果となった。
あとはもう簡単だ。
土台に好きなようにパーツを追加していけば良い。

先程の2の上に以下のコードを追加しよう。

それと土台の背景色設定を削除しておく。

これで実行すると、当初の目標の画面が確認できた。
navigation_customview_1