gpt4 book ai didi

iphone - UISearchBar 键盘返回键

转载 作者:可可西里 更新时间:2023-11-01 03:01:13 26 4
gpt4 key购买 nike

我正在使用 UISearchBar 将文本输入与数据库中的条目进行匹配,并在用户键入时在 UITableView 中向用户显示匹配结果。

一切都很好,但是,我找不到改变搜索栏键盘返回键类型的方法。默认情况下,它将标准的 return 键替换为 Search 按钮。因为我在用户键入时进行实时搜索,所以我不需要此按钮,将它放在那里并且处于非事件状态会引发一些可用性问题。

尝试的解决方案

  1. 我可以使用 setKeyboard:UIKeyboardType 方法设置键盘,但这似乎并没有覆盖用 < 替换返回键(在标准键盘上)的默认设置kbd>Search 键,它不允许访问更改此 return 键。

  2. 我考虑过使用 UITextField,让我可以通过 UITextInputTraits 协议(protocol)访问 returnKeyType 属性。然而,我的问题是我正在实现 UISearchBarDelegate 方法 searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText,我将失去 UITextField

有没有一种方法可以保留搜索栏委托(delegate)方法的功能,同时可以合法访问键盘的返回键?

事实上,我正在实现的几乎完全相同的屏幕都可以在 Apple 的时钟应用程序中找到
截图:
enter image description here

因此,我们将不胜感激任何有关清洁解决方案的帮助。请注意右下角的 return 键,而不是默认的 Search 按钮。

最佳答案

与@sudip 的回答相比,在 iOS 7 中略有不同。

for (UIView *subview in self.searchBar.subviews)
{
for (UIView *subSubview in subview.subviews)
{
if ([subSubview conformsToProtocol:@protocol(UITextInputTraits)])
{
UITextField *textField = (UITextField *)subSubview;
[textField setKeyboardAppearance: UIKeyboardAppearanceAlert];
textField.returnKeyType = UIReturnKeyDone;
break;
}
}
}

关于iphone - UISearchBar 键盘返回键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8583463/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com