3

オンラインで多くの解決策を確認しましたが、NavigationControllerの背景画像にまだ問題があります。

これは私のコードです:

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"header_bg"] forBarMetrics:UIBarMetricsDefault];

問題は、バーの外観(主に色)が変わったのに、それでも画像のように見えないことです。

これにアプローチするためのより良い方法はありますか?

4

4 に答える 4

5

これを試して....

UIImageView *imageView = [[UIImageView alloc] initWithImage: [UIImage imageNamed: @"NavBar_Img.png"]];
self.navigationItem.titleView = imageView;
[imageView release];
于 2012-12-04T13:23:48.517 に答える
3

スタイルを設定して、最後に次のようなコードを追加してください。

self.navigationController.navigationBar.barStyle = UIBarStyleDefault;
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"header_bg"] forBarMetrics:UIBarMetricsDefault];
于 2012-12-04T13:15:01.387 に答える
0

背景画像を設定すると、ナビゲーションによって画像のパターンが作成されることに気づきました。バーに小さい画像を追加すると、画像が繰り返されます。大きい画像を追加すると、上部のみが表示されます。これが、画像は表示されますが、色は表示されない理由です。

さらに、背景画像を変更すると、検索バーの背景色が黒に設定されるため、半透明の画像で問題が発生します。したがって、透明な画像を避け、画像とバーの両方に同じ高さ、できれば44ピクセルを使用するようにしてください。

于 2012-12-04T16:07:14.460 に答える
0

私は光o_Oを探している仲間の失われた魂のために私が共有するわずかに異なる問題を抱えていました

以前にUIAlertViewを表示した後、背景画像がナビゲーションバーに表示されませんでした。別のViewControllerを作成して、UIAlertViewをその中に移動しようとしましたが、同じことが起こりました。背景画像がありません。興味深いのは、最初のコントローラーをUIAlertViewコントローラーを超えたコントローラーに設定すると、背景画像が期待どおりに表示されたことです...

以下のParasJoshiの回答に感謝します。

[UINavigationBar appearance]

私は使用しました...

self.navigationController.navigationBar 

UIAlertViewに関係なく、背景画像がもう一度表示されます。

これら2つの参照の違いは何ですか?私が報告する必要のあるiOS7に問題があると考え始めていました。

于 2014-08-26T13:19:41.883 に答える