0

重複の可能性:
iPhone SDK - UINavigationBar を透明にする

私のアプリでは、Push Segues を介して他のすべてのビューをラップする NavigationController を使用しています。したがって、すべてのビューの背景が明確になるようにコントローラーを設定するにはどうすればよいのでしょうか。

私は試した

[self.navigationController.navigationBar setBackgroundColor:[UIColor clearColor]];

しかし、私のビューにはまだ同じストックカラーバーがロードされています。

私に助けを与えることができる人は誰でも大歓迎です。

4

3 に答える 3

2

コーディング忍者が言ったように、このメソッドでは、を継承しUINavigationBarてオーバーライドする必要があります。- (void)drawRect:(CGRect)rect

[[UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:0.0] set];
UIRectFill(rect);

背景色をクリアに設定します。

次に、YourNavigationBar を navigationBar として使用できます。

于 2013-01-17T02:12:09.920 に答える
0

バーの背景色ではなく、tintColor を設定していますが、明確にできるかどうかはわかりません。

于 2013-01-17T01:08:10.093 に答える
0

viewControllers の viewControllers の配列の一部である viewControllers に付属するナビゲーション バーを参照している場合、単純にそのように設定することはできません。明確なナビゲーション バーが必要な場合は、ナビゲーション コントローラーを使用せずに viewController のみを使用し、viewController にモーダル セグエを表示するのが最善の方法です。あるView Controllerから前のView Controllerに移動する、viewControllerを閉じるなど、自分でナビゲーションを処理する必要がある場合.

ナビゲーション バーをサブクラス化し、drawrectメソッドをオーバーライドできます。個人的には[UIColor clearColor]、混合レイヤーを避けてパフォーマンスを向上させるために、可能な限り使用を避けます。

于 2013-01-17T01:08:53.327 に答える