1

には 7 つのタブがありますUITabBariOSは、最後の 2 つのタブを「その他」というタブに自動的にグループ化します。viewDidLoad次のように、7 つのタブのナビゲーション バーの色合いを設定しました。

 self.navigationController.navigationBar.tintColor = [UIColor blackColor];

自動生成された [その他] タブのナビゲーション バーの色を設定するにはどうすればよいですか?

4

6 に答える 6

4

self.tabBarController.moreNavigationControllerユーザーが [その他] タブ バーの項目をタップしたときに表示されるナビゲーション コントローラーにアクセスして取得できます。これで、変更とカスタマイズを実行できます。たとえば、ナビゲーション バーのスタイルを変更できます。例:

UINavigationController* more = self.tabBarController.moreNavigationController;
more.navigationBar.barStyle = UIBarStyleBlack;

[その他] タブ バーの項目がタップされたときに表示される内容をカスタマイズする方法の詳細については、私の本の次のセクションを参照してください。

http://www.apeth.com/iOSBook/ch25.html#_uitabbar

于 2013-03-29T12:43:17.183 に答える
1

self.navigationController.navigationBar.tintColor = [UIColor blackColor];

この行はtintColorfor ナビゲーション バーを変更します。

あなたの質問から、私には (そしてもちろん他の人にも)、あなたは と誤解UITabBarControllerしているように見えますUINavigationController

カスタマイズに関するすべての情報をUITabBarController ここで見つけることができます

于 2013-03-29T12:30:11.490 に答える
1

AppDelegate.m で UINavigationController の色を変更する必要があります

 UIColor *navBarColor = [UIColor blackColor];
 [[UINavigationBar appearance] setTintColor:navBarColor];  
 self.navigationController.navigationBar.tintColor = navBarColor;
于 2013-03-29T12:52:10.873 に答える
0

iOS8.0用

 self.navigationController.navigationBar.barTintColor = [UIColor blackColor];
于 2015-08-06T16:26:48.547 に答える
0

apperance を試してください (おそらくアプリ デリゲートの didfinishlaunchingwithoptions で)。

[[UITabBar appearance] setTintColor:[UIColor blackColor]];
[[UITabBarItem appearance] setTintColor:[UIColor blackColor]];    
于 2013-03-29T12:38:12.347 に答える
0

iOS 7 の場合、AppDelegate に以下を追加することで、ナビゲーション バーの色を変更し、非半透明 (デフォルトでははい) に設定し、ナビゲーション タイトルの色を変更できます。

UINavigationController *moreController = _tabBarController.moreNavigationController;
moreController.navigationBar.barTintColor = [UIColor orangeColor];
moreController.navigationBar.translucent = NO;
moreController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName : [UIColor whiteColor]};
于 2013-10-08T17:31:00.390 に答える