web-dev-qa-db-ja.com

iOS7でUISearchBarの背景色を変更する方法

IOS7でUISearchBarの背景色を変更するにはどうすればよいですか?

enter image description here

グレーではなく、uinavigationbarのように色を変えたい

このコードを使用すると、それが出てきます

searchBar.backgroundColor = [UIColor redColor];

enter image description here

それは赤い色ではありません!!!これは、ナビゲーションバーの背景色とまったく同じ状況です。

70
dev.nikolaz

使用する必要があります:

searchBar.barTintColor = [UIColor redColor];

enter image description here

どうもありがとう!

181
dev.nikolaz

背景画像を鮮明な画像に設定すると、準備完了です。これはpre-ios 7互換でもあります。

searchBar.backgroundImage = [[UIImage alloc] init]
searchBar.backgroundColor = [UIColor redColor];
56
Vadoff

上記のソリューションが機能しないように思える場合は、検索バーのスタイルをMinimalに設定してください。

[self.searchDisplayController.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

そして、シンプルなsearchBarの

[self.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

SearchBar Styleは、インターフェイスビルダーからMinimalに設定することもできます。

31
zeeawan

それは本当に私のために働いていない、または時々、あなたも、これを試してください

for (UIView *view in [[filterTextField.subviews objectAtIndex:0] subviews]){
                if ([NSStringFromClass([view class]) isEqualToString:@"UISearchBarBackground"])
                    view.alpha = 0;

            }
6
chings228

UISearchBarがMainStoryBoardで定義されている場合は、そのUISearchBarをクリックして、右側で処理できるオプションを確認します。 4番目のタブ(盾のように見えるタブ)をクリックすると、バーティントオプションが表示されます。そこで、必要なUISearchBarの色を選択できます。

そうでない場合、プログラムで次のようなことができると思います:

    UISearchBar* sb =[[UISearchBar alloc] init];
    sb.backgroundColor=[UIColor redColor];

これがお役に立てば幸いです!

3
FabKremer