ナビゲーションバーの色の変更
今回はおそらく一般的である、UIViewControllerを継承したクラス(MainViewController)からモーダルビュー(ModalViewController)を呼び出します。MainViewController.h
ModalViewController *modalViewController=[[ModalViewController alloc]init];
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:modalViewController];
navController.navigationBar.tintColor=[UIColor colorWithRed:0 green:0 blue:0 alpha:255]; //ここで色の指定
[self presentModalViewController:navController animated:YES]; //モーダルビュー呼び出し
[modalViewController release];
[navController release];
上のように定義してあげれば呼び出したモーダルビューのナビゲーションバーの色が変化します。でも前のエントリで・・・
実は前にモーダルビューのナビゲーションバーの色について書いたことがあるのですが(こちらの記事です)、そのときは以下のように、モーダルビュー側のviewDidLoadメソッドで色の指定をしていました。ですが今回はなぜかこの方法だと色の変更はされませんでした。
ModalViewController.m
- (void)viewDidLoad
{
self.navigationController.navigationBar.tintColor = [UIColor blueColor]; //ここで指定しても色の変更がされなかった
[super viewDidLoad];
}
うーん、この違いはなんなんだ・・・。
0 件のコメント:
コメントを投稿