Ответ 1
Необходимо использовать:
searchBar.barTintColor = [UIColor redColor];
Все спасибо!
Как изменить цвет фона UISearchBar в iOS7?
не серый, я хочу изменить цвет, как мой uinavigationbar
Если я использую этот код, то что выходит
searchBar.backgroundColor = [UIColor redColor];
Это не красный цвет!!! Такая же ситуация, как в фоновом цвете панели навигации.
Необходимо использовать:
searchBar.barTintColor = [UIColor redColor];
Все спасибо!
Установите фоновое изображение на четкое изображение, и вы хорошо пойдете. Это также совместимо с pre-ios 7.
searchBar.backgroundImage = [[UIImage alloc] init]
searchBar.backgroundColor = [UIColor redColor];
Если вышеуказанные решения не работают, убедитесь, что вы установили стиль строки поиска Минимальный.
[self.searchDisplayController.searchBar setSearchBarStyle:UISearchBarStyleMinimal];
И для простого поискаBar
[self.searchBar setSearchBarStyle:UISearchBarStyleMinimal];
Стиль SearchBar также можно установить из конструктора интерфейса в Минимальный.
это не работает для меня, или иногда, если вы тоже, попробуйте это
for (UIView *view in [[filterTextField.subviews objectAtIndex:0] subviews]){
if ([NSStringFromClass([view class]) isEqualToString:@"UISearchBarBackground"])
view.alpha = 0;
}
Если UISearchBar был определен в MainStoryBoard, просто нажмите на этот UISearchBar и взгляните на параметры, которые вы можете обрабатывать справа. Там, если вы нажмете на четвертую вкладку (ту, которая выглядит как щит), у вас есть опция Tint. Там вы можете выбрать нужный вам цвет UISearchBar.
Если нет, я думаю, что программно вы можете сделать что-то вроде этого:
UISearchBar* sb =[[UISearchBar alloc] init];
sb.backgroundColor=[UIColor redColor];
Надеюсь, это поможет!