web-dev-qa-db-ja.com

iOS 7で不透明なUINavigationBarを取得する方法

IOS 7をターゲットにしたUINavigationBarを半透明のない単色にする方法はありますか? backgroundColor、barTintColor、不透明、透明/半透明などを設定しようとしましたが、何も機能しません。

誰もこれを行う方法を知っていますか?

ここに私が使用しているコードのチャンクがあります。 navigationBarに設定したプロパティに注目してください。それらのいずれも、任意の順序または組み合わせで機能していません。

@property (strong, nonatomic) UITabBarController *tabBarController;

testViewController = [[TestViewController alloc] init];
anotherViewController = [[AnotherViewController alloc] init];
navigationController = [[UINavigationController alloc]
                            initWithRootViewController:testViewController];

navigationController.navigationBar.barTintColor = [UIColor darkGrayColor;
navigationController.navigationBar.barStyle = UIBarStyleBlack;
navigationController.navigationBar.translucent = YES;
navigationController.navigationBar.opaque = YES;

NSArray *tabBarViewControllers = [NSArray arrayWithObjects:
                                      navigationController,
                                      anotherViewController, nil];
self.tabBarController.viewControllers = tabBarViewControllers;
29
tentmaking

コードには、navigationController.navigationBar.translucent = YES;がリストされます。

NOに設定します。

56
Vadoff

完全に不透明にするために、プロパティセクションからナビゲーションバーのスタイルを変更するだけです!

Just set the style as Black!

これは、黒にしたときの様子です

9
marmikshah

すべてのナビゲーションバーを不透明にするには、UINavigationBar.appearance().translucent = falseapplication:didFinishLaunchingWithOptions:に追加します。

7
Nick Yap
self.navigationController.navigationBar.isTranslucent = false
2