【问题标题】:Set rounded corners and border to background(Not the UITextField) of UISearchBar in ios7在ios7中将圆角和边框设置为UISearchBar的背景(不是UITextField)
【发布时间】:2014-05-13 11:28:05
【问题描述】:

如何在 ios7 中为 UISearchBar 的背景应用圆角和边框?我可以更改栏的背景颜色。

类似的东西

谢谢

【问题讨论】:

  • layer.borderColor、layer.borderWidth 和 layer.cornerRadius 怎么样?
  • @ValentinShamardin 我不希望它用于文本框,但我希望它用于图片中的黑色部分。

标签: ios objective-c ios7 uisearchbar


【解决方案1】:

要使搜索栏变为圆形,请使用:

for (UIView *searchBarSubview in [mySearchBar subviews]) {
    if ([searchBarSubview conformsToProtocol:@protocol(UITextInputTraits)]) {
        @try {

            [(UITextField *)searchBarSubview setBorderStyle:UITextBorderStyleRoundedRect];
        }
        @catch (NSException * e) {
            // ignore exception
        }
    }
}

要更改背景颜色,请使用:

yourSearchBar.barTintColor = [UIColor redColor]; // Use you necessary color.

【讨论】:

    【解决方案2】:
      UISearchBar *searchBar  = [[UISearchBar alloc] init];
      searchBar.layer.cornerRadius  = 6;
      searchBar.clipsToBounds       = YES;
      [searchBar.layer setBorderWidth:1.0];
      [searchBar.layer setBorderColor:[[UIColor lightGrayColor].CGColor];
    

    【讨论】:

    • 我用 Swift 实现了这一点,方法是:self. searchBar.layer.cornerRadius = 6self. searchBar.clipsToBounds = true
    猜你喜欢
    • 2019-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-17
    • 1970-01-01
    • 2012-05-23
    相关资源
    最近更新 更多