#pragma mark - searchBar 开始编辑
- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar{
NSLog(@"开始编辑");
// 01 隐藏导航栏
[self.navigationController setNavigationBarHidden:true animated:true];
// 02 重新设置searchBar 背景图片
[self.searchBar setBackgroundImage:[UIImage imageNamed:@"bg_login_textfield_hl"]];
// 03 显示取消按钮
[self.searchBar setShowsCancelButton:true animated:true];
// 04 遍历searchBar 子控件 拿到这个按钮 然后 重新设置它的title
// UINavigationButton 他是系统私有的 但是我们可以肯定他一定继承UIButton
// NSLog(@"%@",);
for (UIView *view in self.searchBar.subviews[0].subviews) {
// 如果判断他是class 是uibutton
if ([view isKindOfClass:[UIButton class]]) {
// 设置title
UIButton *btn = (UIButton *)view;
//
[btn setTitle:@"取消" forState:UIControlStateNormal];
}
}
}
- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar{
// 01 显示导航栏
[self.navigationController setNavigationBarHidden:false animated:true];
// 02 重新设置searchbar 背景图片
[self.searchBar setBackgroundImage:[UIImage imageNamed:@"bg_login_textfield"]];
// 03 关闭取消按钮
[self.searchBar setShowsCancelButton:false animated:true];
// 05 清空searchBar上的文字
self.searchBar.text = @"";
}
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar{
// 取消键盘第一响应
[self.searchBar resignFirstResponder];
}
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
// 判断searchBar text 的长度
if (self.searchBar.text.length > 0) {
}else {
}
}
// searchBar
- (UISearchBar *)searchBar{
if (!_searchBar) {
_searchBar = [UISearchBar new];
// 设置代理
_searchBar.delegate = self;
// 设置默认文字
_searchBar.placeholder = @"请输入xxx";
// 设置背景图片
[_searchBar setBackgroundImage:[UIImage imageNamed:@"bg_login_textfield"]];
_searchBar.tintColor = RGBColor(21, 188, 173);
}
return _searchBar;
}