UISeachBar 如何检测用户按下搜索按钮

31

我尝试在UISearchBar中使用以下代码来在键盘上点击Search按钮时获取通知:

    - (BOOL)textFieldShouldReturn:(UITextField *)textField{

        return YES;
    }

但是当我点击搜索按钮时,这种方法不会被调用。

4个回答

63

我能否在这个方法中获取UISearchBar中TextView的文本? - YosiFZ
1
你应该实现这个方法来开始搜索。使用搜索栏(UISearchBar)的“text”属性获取文本。你也可以向搜索栏发送becomeFirstResponder以通过编程方式开始编辑。 - hp iOS Coder
是的,就像 @hpiOSCoder 所说的那样,从搜索栏获取文本。searchBar.text 将为您提供该值。 - ipraba

4

首先要设置 searchBar 代理。在 viewDidLoad() 中进行设置。

self.searchBar.delegate = self

接下来是 func searchBarSearchButtonClicked(searchBar: UISearchBar) 函数


4

如果您想在“搜索”按钮被点击时执行某些操作,则可以尝试这种方法:

  • (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar

告诉代理搜索按钮已被点击。


2

Swift 5.X:

1) 设置代理:

searchBar.delegate = self

2) 添加功能:

func searchBarSearchButtonClicked(_ searchBar: UISearchBar)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接