UISearchBar取消按钮没有响应
一旦用户在搜索栏中有焦点,我就实现了显示取消按钮的搜索栏。 为此我写了searchBar.showsCancelButton = YES;
在我的searchBarTextDidBeginEditing
方法中。 在searchBarSearchButtonClicked
,我辞去了键盘,以便用户可以查看完整的tableview。
问题:此时,搜索栏取消按钮没有响应。 它只有在搜索栏重新获得焦点时才会响应。 这是搜索栏取消按钮的默认属性还是我缺少我的代码中的东西。 我想要使用取消按钮,而不必再次在搜索栏中输入焦点。
这是搜索栏取消按钮的默认行为。 如果你想要其他功能,你可以取消选中搜索栏的cancelbutton属性,并可以使用UIButton
作为取消按钮。
是的,你可以让你的UISearchBar
取消按钮响应。 默认情况下它是禁用的,但你可以访问它的子视图,然后设置启用取消按钮。
for (id object in [mySearchBar subviews])
{
if ([object isKindOfClass:[UIButton class]])
{
UIButton *searchBarCancelBtn = (UIButton*)object;
[searchBarCancelBtn setEnabled:YES];
}
}
如果你想在UISearchBar文本字段中使用其他逻辑自定义清除按钮,请遵循此答案
我认为它是UISearchBar
的默认行为,当它获得焦点时,只有取消按钮将被启用。 UISearchBar
没有焦点时无法获取取消按钮事件。
所以我的建议是为了完成你的任务,
UIBarButtonItem
插入为UISearchBar
UIBarButtonItem
上一篇: UISearchBar cancel button not responding
下一篇: Stopping UISearchDisplayController to dismiss the searchbar keyboard