6

私はこのサイトと、ナビゲーションバーの色合いの変更を設定する他の方法を調べてきました。例を見てきましたが、必要なものではないので、助けていただければ幸いです。

私のアプリデリゲートには次のものがあります:

@synthesize window;
@synthesize tabBarController;
@synthesize navigationController;
@synthesize navigationController1;
@synthesize navigationController2;
@synthesize viewController;
@synthesize viewController2;
@synthesize viewController3;

#pragma mark -
#pragma mark Application lifecycle 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:              (NSDictionary *)launchOptions {    

    // Override point for customization after application launch.


    // Set the tab bar controller as the window's root view controller and display.
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];


    return YES;
}

上記のコードを入力するself.navigationController.navigationBar setTintColor:[UIColor blackColor]と、ナビゲーション コントローラーの 1 つだけが変更され、必要なコントローラーは変更されません。

タブバーに 7 つのアイテムがあり、[MORE...] を押すと、メイン画面に収まらない他のアイテムを含むテーブル ビューが表示され、ナビゲーション バーが自動的に追加され、何をしてもこのナビゲーション バーの色合いを変更することはできません。私が持っているものは変更できます@synthesizeが、自動的に入力されたものは変更できません。

自動的に配置されるナビゲーション バーを変更する方法を教えてください。

4

2 に答える 2

17

これは、外観プロキシを使用して行うことができます。このように色を設定すると、アプリのすべてのナビゲーションバーに適用されます。

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]];
于 2012-02-05T13:02:41.627 に答える
3

iOS 6 以前の場合:

[[UINavigationBar appearance] setTintColor:[UIColor blackColor]];

iOS 7 以降の場合:

[[UINavigationBar appearance] setBarTintColor:[UIColor blackColor]];

AppDelegate のこのメソッドで設定します。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
于 2013-12-18T13:11:09.290 に答える