【问题标题】:iOS tint textfield background of Search bar搜索栏的iOS tint textfield背景
【发布时间】:2012-11-05 16:37:54
【问题描述】:

在 iOS(支持 5.x+)中,将 UISearchBar 文本字段的白色背景颜色更改为不同颜色的最简单方法是什么?上面没有 tintColor 属性。

【问题讨论】:

标签: iphone objective-c ios search


【解决方案1】:

你可以试试这个方法,

[searchBar setSearchFieldBackgroundImage: forState:];

在 iOS 5 之前的版本中,您可以将类别用作,

@implementation UISearchBar (BackgroundColor)

- (UITextField *)field {
    // HACK: This may not work in future iOS versions
    for (UIView *subview in self.subviews) {
        if ([subview isKindOfClass:[UITextField class]]) {
            return (UITextField *)subview;
        }
    }
    return nil;
}

- (void)setTextBackgroundColor:(UIColor *)color {
    self.field.backgroundColor = color;
}

@end

【讨论】:

  • 太棒了,我会在这个周末试一试。感谢您的快速回复!尝试后我会将其标记为已接受的答案。
  • 作为一个附带问题,您知道您是否可以轻松更改小搜索栏放大镜图标?
  • @babolatpdtp,我想我们可以。让我检查一下。是否将其作为一个单独的问题提出,以便其他尝试这样做的人也能从中受益。
  • 您可以使用 iOS 5 应用程序,如下所述。对于在此之前使用操作系统版本的应用程序,这将不起作用。 - (void)setImage:(UIImage *)iconImage forSearchBarIcon:(UISearchBarIcon)icon state:(UIControlState)state;但是我建议您无论如何提出一个新问题,以便正如我上面提到的那样,它将使其他试图为同一问题找到答案的人受益。
  • 你先生真棒。感谢您的快速回复。我很惊讶这并没有真正出现。创建一个新问题的公平点,我现在就这样做并链接回这个。
猜你喜欢
  • 2014-06-06
  • 2011-07-10
  • 1970-01-01
  • 2013-10-10
  • 2013-11-01
  • 2019-06-28
  • 1970-01-01
  • 1970-01-01
  • 2018-07-31
相关资源
最近更新 更多