一.支持空搜索,当没有输入的时候,search按钮一样可以点击
1.当搜索框有内容时,系统的UISearchBar的搜索按钮变成高亮,可以点击
2.当搜索框没有内容时,系统的UISearchBar的搜索按钮变灰,不可以点击
现在我们希望当搜索框没内容时,系统的UISearchBar的搜索按钮变成高亮,可以点击
在UISearchBarDelegate方法中
- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar
{
NSArray<UIView *> *views = ([[[UIDevice currentDevice] systemVersion] floatValue] < 7.0) ? searchBar.subviews : [[searchBar.subviews objectAtIndex:0] subviews];
for (UIView *subview in views) {
if ([subview isKindOfClass:[UITextField class]]){
UITextField *searchBarTextField = (UITextField *)subview;
searchBarTextField.enablesReturnKeyAutomatically = NO;
break;
}
}
}
二.设置UISearchBar输入字体颜色和placeHolder字体颜色和字体大小
//获取searchBar里面的TextField
UITextField *searchField = [searchBar valueForKey:@"_searchField"];
//更改searchBar中placeHolder字体颜色
[searchField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"];
//更改searchBar中placeHolder字体大小
[searchField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.font"];
//更改searchBar输入文字颜色
searchField1.textColor = [UIColor redColor];
三.设置UISearchBarIcon图片
- (void)setImage:(nullable UIImage *)iconImage forSearchBarIcon:(UISearchBarIcon)icon state:(UIControlState)state NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;