2011-06-13 75 views

回答

1

我找不到任何名为UISearchView的类 - 你的意思是UISearchBar?如果是这样,请继续阅读...

您无法以编程方式禁用(变灰)按钮。在UISearchBarDelegate上执行searchBar:shouldChangeTextInRange:replacementText:方法来检查替换文本@“\ n”(即返回键按下),以及是否输入了足够的文本以允许它搜索,如果没有,则不执行任何操作。

如果你真的要禁用回车键,你可以建立自己的键盘视图(没有框架键盘继承获得现有功能),并从UITextView的inputView属性返回它(这也意味着建立自己的搜索视图)

+0

建立自己的键盘视图的问题是你必须考虑所有的本地化。这不是一件小事。其实我认为有公司把它们作为产品来建设。 :) – 2011-06-26 08:15:28

+0

这不是一个心灵的任务,这是肯定的。但这是我能想到的唯一方法,以获得您正在寻找的确切行为。 – RyanR 2011-06-26 14:00:57

+0

+1我同意。无法禁用框架键盘中的按钮。 – 2011-06-26 14:08:00

9

值得注意的是,您可以在文本字段上更改enablesReturnKeyAutomatically,这将导致在文本字段中没有文本时禁用返回/完成键。

//默认为否(YES时,将自动禁用返回键时 文本窗口小部件具有零长度的内容,并且将自动启用 当文本组件具有非零长度的内容)

但是,作为SK9我很确定注意到你不能指定什么时候应该启用和禁用规则。

0

enablesReturnKeyAutomatically为YES,如果您使用的是uitextfield.It为我工作。

textField.enablesReturnKeyAutomatically = YES/NO

0

有一个很简单的解决这个没有UI的黑客,没有访问苹果私有API和这样。只需将其添加到viewDidLoad即可。

 yourSearchBar.enablesReturnKeyAutomatically = true 

按照苹果的文档:

如果你把它设置为true,当文本输入区不包含文本的键盘禁用回车键。只要用户输入一些文本,Return键就会自动启用。

相关问题