iOS中UISearchBar改变系统默认实现方法
_searchBar = [[UISearchBar alloc] init];
_searchBar.backgroundColor = [UIColor clearColor];
_searchBar.showsCancelButton = NO;
_searchBar.tintColor = [UIColor orangeColor];
_searchBar.placeholder = @"搜索感兴趣的内容";
for (UIView *subView in _searchBar.subviews) {
if ([subView isKindOfClass:[UIView class]]) {
[[subView.subviews objectAtIndex:0] removeFromSuperview];
if ([[subView.subviews objectAtIndex:0] isKindOfClass:[UITextField class]]) {
UITextField *textField = [subView.subviews objectAtIndex:0];
textField.backgroundColor = [UIColor colorWithRed:240/255.0 green:240/255.0 blue:240/255.0 alpha:1];
//设置输入框边框的颜色
// textField.layer.borderColor = [UIColor blackColor].CGColor;
// textField.layer.borderWidth = 1;
//设置输入字体颜色
// textField.textColor = [UIColor lightGrayColor];
//设置默认文字颜色
UIColor *color = [UIColor grayColor];
[textField setAttributedPlaceholder:[[NSAttributedString alloc] initWithString:@"搜索感兴趣的内容"
attributes:@{NSForegroundColorAttributeName:color}]];
//修改默认的放大镜图片
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 13, 13)];
imageView.backgroundColor = [UIColor clearColor];
imageView.image = [UIImage imageNamed:@"gww_search_ misplaces"];
textField.leftView = imageView;
}
}
}