黒いナビゲーションバーに青いDoneボタンを適用する方法

2011-08-18

done-style-button-on-black-uinavigationbar.png

iPhoneでUINavigationBarに黒い色をつけることができますが、ナビゲーションバーの中に「完了」という青いスタイルのDoneボタンをつけるにはちょっとコツがあります。

単にナビゲーションバーを黒くするだけであれば…

こんな感じで、tintColorプロパティに[UIColor blackColor]を適用すると、バーが黒色になります。

- (void)viewDidLoad {
[super viewDidLoad];
self.navigationController.navigationBar.tintColor = [UIColor blackColor];
}

ここまでは順調のようですが…

ところが、この状態で以下のようにボタンのスタイルを「UIBarButtonItemStyleDone」にしても、通常の黒いボタンになってしまいます。

self.navigationItem.rightBarButtonItem.style = UIBarButtonItemStyleDone;

navigationBar.barStyleを調整する

ちゃんとスタイルを適用させるためには、tintColroではなく「barStyle」を「UIBarStyleBlack」に設定しましょう。

- (void)viewDidLoad {
[super viewDidLoad];
self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
}

まだまだ勉強することが多いですね! 頑張っていきましょう~!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

2011-08-18