我有一个UISearchBar,它充当表视图的实时过滤器.当键盘通过endEditing:解除时,查询文本和灰色圆形"清除"按钮保持不变.从这里,如果我点击灰色的"清除"按钮,键盘会在文本被清除时重新出现.
我该如何防止这种情况?如果键盘当前未打开,我希望该按钮在不重新打开键盘的情况下清除文本.
当我点击清除按钮时,会调用一个协议方法.但是向UISearchBar发送resignFirstResponder消息对键盘没有任何影响.
在UISearchBar上,有一个X元素允许您一次清除所有内容.有没有办法在发生这种情况时收到通知?
UISearchBarDelegate::searchBarCancelButtonClicked
仅在点击"取消"按钮时触发.
如果我将resign代码放在我的if条件下键盘不会退出,如果我评论if条件我的键盘辞职.
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
if (searchText.length == 0) {
[searchBar resignFirstResponder];
}
}
Run Code Online (Sandbox Code Playgroud)
我想在用户按下"x"按钮时退出键盘,这时UISearchBar文本为空.有没有办法做到这一点?