Как изменить цвет фона UISearchBar в iOS7


Как изменить цвет фона UISearchBar в iOS7?

не Серый, я хочу изменить цвет, как мой uinavigationbar

если я использую этот код, вот что выходит

searchBar.backgroundColor = [UIColor redColor];

это не красный цвет!!! Это точно такая же ситуация, как и в фоновом цвете панели навигации.

5 61

5 ответов:

нужно использовать:

searchBar.barTintColor = [UIColor redColor];

enter image description here

Всем спасибо!

установите фоновое изображение на четкое изображение, и вы хорошо идти. Это также предварительно ios 7 совместим.

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

Если вышеуказанные решения не работают, убедитесь, что вы установили стиль строки поиска в минимальный.

[self.searchDisplayController.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

и для простой панели поиска

[self.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

Стиль Панели Поиска также можно установить из interface builder в минимальный.

это действительно не работает для меня, или иногда , если вы тоже, попробуйте это

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

            }

Если UISearchBar был определен в MainStoryBoard, просто нажмите на эту UISearchBar и посмотрите на параметры, которые вы можете обрабатывать справа. Там, если вы нажмете на четвертую вкладку (ту, которая выглядит как щит), у вас есть опция оттенка бара. Там вы можете выбрать нужный цвет UISearchBar.

если нет, я думаю программно можно сделать что-то вроде этого:

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

надеюсь, это поможет!