SearchBar搜索框去掉叉号或者自定义叉号的响应事件

想要对搜索框的小叉子,也就是clearButton进行一些操作,第一步肯定是去UISearchBar的头文件中寻找相关属性。
但是看了头文件之后你会发现并无卵用,UISearchBar 任性地没有开放clearButton这个属性。那么如何对这个clearButton进行操作呢?

 #pragma mark -- 隐藏clearButton
 // 获取输入框
 UITextField * searchField = [self.searchBar valueForKey:@"searchField"];
 // 隐藏清除按钮
 searchField.clearButtonMode = UITextFieldViewModeNever;
 #pragma mark -- 给clearButton重新绑定触发方法
 // 获取输入框
 UITextField * searchField = [self.searchBar valueForKey:@"searchField"];
 // 获取清除按钮
 UIButton * clearBtn = [searchField valueForKey:@"_clearButton"];
 // 重新绑定触发方法
 [clearBtn addTarget:self action:@selector(clearBtnClick) forControlEvents:UIControlEventTouchUpInside];

其他控件其他操作照葫芦画瓢就好。

你可能感兴趣的:(SearchBar搜索框去掉叉号或者自定义叉号的响应事件)