相关疑难解决方法(0)

如何防止NSSearchField使用第一个自动完成列表条目覆盖输入的字符串?

我正在寻找一种方法来创建一个行为如下的nssearchfield:

  • 用户在文本中的类型
  • 基于匹配,出现自动完成下拉列表
  • 搜索字段中的文本不会自动完成列表中的第一项

关键是,我的字符串匹配搜索文本字段中的任何子字符串和自动完成都不起作用,因为它会覆盖我输入的字符串.事实上,这应该是默认行为,还是我误解了搜索字段的目的?
进一步键入将进一步限制列表,但只有在自动填充下拉列表中选择项目后,该项目才会插入到文本字段中.

如果使用nssearchfield无法完成此操作,还有其他选择吗?

macos cocoa autocomplete nssearchfield

5
推荐指数
1
解决办法
1495
查看次数

Cocoa:停止字段编辑器自动完成空格键

我有一个带有几个NSTextField控件的自定义视图,我想为其提供自定义自动完成功能,并且我已成功实现了使用NSTextFieldDelegate协议的所有控件.自动完成是全名或地名,具体取决于正在编辑的文本字段.

问题是自动完成几乎总是包含空格字符,因此如果用户键入的内容与建议相符,但又不想接受该建议,则当用户按下空格键时,字段编辑器将接受该建议. .我希望字段编辑器仅使用Tab键接受建议.

我理解这将涉及子类化NSTextView以提供自定义字段编辑器,Apple将其记录为可接受的方式,但是我不清楚我需要覆盖哪些方法以及重写的方法需要做什么,以便得到我想要的东西.

谁能建议如何实现这一目标?

cocoa autocomplete subclass fieldeditor nstextview

4
推荐指数
1
解决办法
1122
查看次数