2012/09/27

[iOS][Objective-C]NavigationBarの色を変更する

UINavigationControllerを使ってNavigationbarを実装した場合、自動的にグラデーションがかかってしまいます。

ちょっとこれはやだなーっと思って、グラデーションをかけない方法を調べました。

で、どうやら、iOS5から画像を設定することで、なくすことができそうです。

プログラムを組んだら下のようになりました。

UIImage *navigationbarcolor = [UIImage imageNamed:@"navigationbarcolor"];
[[UINavigationBar appearance] setBackgroundImage:navigationbarcolor forBarMetrics:UIBarMetricsDefault];
たったこれだけで、下のように単色のナビゲーションバーを作成することができました。

実行結果は、下のようになります。
Photobucket
もちろん、Retina用に「@2x.png」を用意することで対応することができます。

これで今後の開発において、単色で実装することができます。

追記
画像の大きさは
Retina:640×88
Not Retina:320×44
です。

0 コメント:

コメントを投稿