我正在使用UISearchBar来将文本输入与数据库中的条目匹配,并在用户键入时在UITableView中向用户显示匹配的结果。一切都很好,但是我找不到一种方法来更改搜索栏键盘的返回键类型。默认情况下,它将标准的“return”键替换为一个“Search”按钮。因为我正在用户键入时进行实时搜索,所以我不需要这个按钮,而且它的存在并且无法使用会导致一些可用性问题。
已尝试的解决方案:
1. 我可以使用setKeyboard:UIKeyboardType方法设置键盘,但这似乎不能覆盖替换返回键(在标准键盘上)为“Search”键的默认设置,并且它不允许更改此返回键的访问权限。
2. 我考虑使用UITextField,通过UITextInputTraits协议使我能够访问returnKeyType属性。然而,我的问题是我正在实现UISearchBarDelegate方法searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText,如果使用UITextField,我就会失去它。
是否有一种方法,我可以保留搜索栏代理方法的功能,同时合法地访问键盘的返回键?
事实上,我正在实现的几乎完全相同的屏幕在Apple的时钟应用程序中找到
屏幕截图:
所以任何关于清洁解决方案的帮助将不胜感激。请注意,右下角的返回键而不是默认的“Search”按钮。
已尝试的解决方案:
1. 我可以使用setKeyboard:UIKeyboardType方法设置键盘,但这似乎不能覆盖替换返回键(在标准键盘上)为“Search”键的默认设置,并且它不允许更改此返回键的访问权限。
2. 我考虑使用UITextField,通过UITextInputTraits协议使我能够访问returnKeyType属性。然而,我的问题是我正在实现UISearchBarDelegate方法searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText,如果使用UITextField,我就会失去它。
是否有一种方法,我可以保留搜索栏代理方法的功能,同时合法地访问键盘的返回键?
事实上,我正在实现的几乎完全相同的屏幕在Apple的时钟应用程序中找到
屏幕截图:
所以任何关于清洁解决方案的帮助将不胜感激。请注意,右下角的返回键而不是默认的“Search”按钮。