全部Xcode上でUIを生成してももちろんOK
*IBで下準備*
・カスタマイズしたいナビゲーションバーのあるxibを開く
・追加したいボタンをUIToolbarに乗せたものをview外に作る
※右寄、左寄の両方のボタンをカスタマイズしたい場合はUIToolbarを二つ作る
・UIToolbarの全体の大きさはボタンの数によって横幅を変更する
・作ったツールバーとナビゲーションバーを管理するクラスをIBOutletで繋ぐ
・ボタンのアクションがある場合は同クラスにIBActionを繋ぐ
*X-codeでカスタマイズしたツールバーを乗せる*
UINavigationControllerを管理するクラスのViewdidLoadで以下を呼び出す
//rightButtonsが右寄のボタンをまとめたUIToolBar
//leftButtonsが左寄のボタンをまとめたUIToolBar
-(void)createNaviButtons{
//ツールバーの背景色をナビバーと合わせる
[rightButtons setTintColor:
[self.navigationController.navigationBar tintColor]];
[leftButtons setTintColor:
[self.navigationController.navigationBar tintColor]];
//カスタムビューを設定する
self.navigationItem.leftBarButtonItem
=[[[UIBarButtonItem alloc]initWithCustomView:leftButtons] autorelease];
self.navigationItem.rightBarButtonItem
=[[[UIBarButtonItem alloc]initWithCustomView:rightButtons] autorelease];
}
※問題点
ナビゲーションでプロンプト表示した時にツールバーが
乗っていると背景でばれてしまう。