如何在 iOS7中更改 UISearchBar 的背景颜色

如何在 iOS7中更改 UISearchBar 的背景颜色?

enter image description here

不是灰色,我想改变颜色,就像我的 Uinavigationbar

如果我使用这个代码,就会得到这个结果

searchBar.backgroundColor = [UIColor redColor];

enter image description here

那不是红色! ! ! 这种情况与导航条的背景颜色完全相同。

58055 次浏览

如果 UISearchBar 是在 MainStoryBoard 中定义的,那么只需单击该 UISearchBar 并查看您可以在右侧处理的选项。 在那里,如果你点击第四个标签(看起来像一个盾牌) ,你有一个酒吧色彩选项。在那里您可以选择所需的 UISearchBar 颜色。

如果没有,我猜你可以通过编程来做这样的事情:

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

希望这个能帮上忙!

需要使用:

searchBar.barTintColor = [UIColor redColor];

enter image description here

谢谢!

这对我来说不是真正的工作,或者有时候,如果你也是,试试这个

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


}

设置背景图像为一个清晰的图像,你就可以去。这也是前 ios 7兼容。

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

如果上面的解决方案看起来不起作用,那么请确保您已经将搜索栏样式设置为 很少

[self.searchDisplayController.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

以及简单的搜索栏

[self.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

SearchBar Style 也可以从 Interface Builder 设置为 很少