我正在使用AppKit.NSSearchField
并且需要在用户键入时延迟搜索事件,例如在 2 秒后过滤数据。
我已经从界面生成器中添加了操作 - '结束编辑',但是在键入时它被频繁调用。用户打字时是否有任何本地方法可以增加延迟时间?
我正在使用AppKit.NSSearchField
并且需要在用户键入时延迟搜索事件,例如在 2 秒后过滤数据。
我已经从界面生成器中添加了操作 - '结束编辑',但是在键入时它被频繁调用。用户打字时是否有任何本地方法可以增加延迟时间?
您应该使用一种名为 debouncing 的技术。这个想法是在有点过期延迟之后从您的操作(您连接到“结束编辑”)内部执行一个方法。每次新按键都会重置计时器,该计时器具有固定的延迟。在用户继续输入之前,搜索不会执行。一旦他停下来,最后一个反跳计时器就会启动,你的搜索就会完成。
此处提供更多信息: 如何消除方法调用的抖动?