【问题标题】:How to change background color of UISearchBar in iOS7如何在 iOS7 中更改 UISearchBar 的背景颜色
【发布时间】:2013-10-18 12:39:32
【问题描述】:

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

不是灰色,我想像我的 uinavigationbar 一样改变颜色

如果我使用此代码,那就是结果

searchBar.backgroundColor = [UIColor redColor];

那不是红色!!! 这与导航栏的背景颜色完全相同。

【问题讨论】:

  • 这只是我还是我看不到你的照片?

标签: objective-c ios7 uisearchbar background-color uisearchdisplaycontroller


【解决方案1】:

需要使用:

searchBar.barTintColor = [UIColor redColor];

谢谢!

【讨论】:

  • 这是一种消除搜索栏透明度的方法吗?因为颜色不是真正的红色!
  • @AladdinGallas 您只需将 UISearchBar 的半透明属性设置为 NO,如下所示:[searchbar setTranslucent:NO];
  • 我想给这个栏添加圆角?我该怎么做?
  • 这确实给了条一个红色的色调,但是这个色调仍然有透明度/alpha。有没有办法摆脱它并获得纯色作为色调?
  • 将搜索栏样式设置为 UISearchBarStyleMinimal,而不是得到纯色。
【解决方案2】:

将背景图像设置为清晰的图像,一切顺利。这也兼容 pre-ios 7。

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

【讨论】:

  • 这是一个非常好的答案,如果您想在 textField 中使用白色的最小设计,请使用 clearColor
【解决方案3】:

如果上述解决方案似乎不起作用,请确保您已将搜索栏样式设置为 Minimal

[self.searchDisplayController.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

对于简单的搜索栏

[self.searchBar setSearchBarStyle:UISearchBarStyleMinimal];

搜索栏样式也可以从界面生成器设置为Minimal

【讨论】:

    【解决方案4】:

    这对我来说不是真的有用,或者有时,如果你也一样,试试这个

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

    【讨论】:

    • if 子句可以简单地是if ([view isKindOfClass: UISearchBarBackground)
    • @franklsf95 它不起作用,因为它是一个未记录的类。
    【解决方案5】:

    如果 UISearchBar 是在 MainStoryBoard 中定义的,只需单击该 UISearchBar 并查看右侧可以处理的选项。 在那里,如果您单击第四个选项卡(看起来像盾牌的选项卡),您将获得一个 Bar Tint 选项。在那里你可以选择你想要的 UISearchBar 颜色。

    如果没有,我猜你可以通过编程方式执行以下操作:

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

    我希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 2015-05-30
      • 1970-01-01
      • 1970-01-01
      • 2011-11-05
      • 2014-03-12
      • 1970-01-01
      • 2012-11-28
      • 1970-01-01
      相关资源
      最近更新 更多