【发布时间】:2011-03-02 05:13:42
【问题描述】:
这个问题看起来很简单,但我已经尝试了所有我能想到的方法,并且在 Google 上搜索了几个小时。
我有一个自动完成的 NSSearchField,基本上是复制 Apple 的 SearchField sample code。我在 IB 中关闭了“发送整个搜索字符串”,因为我不想在用户完成他们的文本输入之前进行搜索,并且不想进行多次搜索(它们很昂贵)。
当用户在字段中键入时,当他们按下回车键并指定他们接受当前的自动完成时,我希望触发 NSSearchField 的操作。相反,它似乎只是填写了自动完成功能,然后用户必须再次按 enter 才能触发操作。基本上,考虑开始在 Safari 中输入 URL,它会自动完成,然后按 Enter 开始加载页面(触发操作)。他们无需再次按 Enter 即可开始加载页面。
我尝试过但没有成功的事情:
- control:textView:commandSelector:,正在寻找 insertNewline:。当他们按回车键完成自动完成时,它不会被触发
- 覆盖 controlTextDidEndEditing:。同上
有什么想法吗?谢谢!
【问题讨论】:
标签: objective-c cocoa autocomplete nstextfield nssearchfield