0

iOS 7 でアプリを作成していますが、navigationBar とツールバーの透明度がわかりません。ナビゲーション バーを不透明度 50% の黒に設定するにはどうすればよいですか?

iOS7 ガイドへの移行を読み、wwdc13 レクチャー 214 を見ましたが、ステータス バーの透明度は、接続されているナビゲーション バーの残りの部分とは異なります。

これが私のコードです:

// APP-WIDE THEMING
[[UINavigationBar appearance] setBarStyle:UIBarStyleBlackOpaque];
[[UINavigationBar appearance] setBackgroundColor:[UIColor blueColor]];  
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

これが私の問題のスクリーンショットです: http://grab.by/qiyU

4

4 に答える 4

8

Set the background image to nil, and set the background color with alpha.

[ctrl.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault]; 
ctrl.navigationController.navigationBar.backgroundColor = [UIColor colorWithRed:0 Green:0 Blue:0 Alpha:.5];
于 2014-06-30T09:09:29.970 に答える
0

ここに投稿された回答によると、透明な UINavigationBar を作成することが可能です: How to draw a transparent UIToolbar or UINavigationBar in iOS7

ただし、半透明のナビゲーションバーを作成したいとします。そのためには、不透明度 50% の黒色を含む 1 ピクセルの大きな画像を作成する必要があります。これを Navigationbar の backgroundimage として追加します。

このスニペットはトリックを行う必要があります:

[[UINavigationBar appearance] setBarStyle:UIBarStyleDefault];
UIImage* sti = [UIImage imageNamed:@"EMT_SemiTransparent.png"];
[[UINavigationBar appearance] setBackgroundImage:sti forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setBackgroundColor:UIColor.clearColor];
于 2014-03-19T23:59:29.820 に答える
-1

pListファイルでもキー[コントローラベースのステータスバーの外観を表示]をNOに設定してみてください。

ステータスバーがコードの変更の影響を受けていないようで、ファンキーに遭遇しましたが、これで解決しました。

参照: https://stackoverflow.com/a/18184831/2962193

于 2014-03-04T05:25:44.557 に答える
-2

アルファ値を設定して透明にします。

[[UINavigationBar appearance] setAlpha:0.5f];
于 2013-09-16T12:23:43.763 に答える