0

我正在使用AppKit.NSSearchField并且需要在用户键入时延迟搜索事件,例如在 2 秒后过滤数据。

我已经从界面生成器中添加了操作 - '结束编辑',但是在键入时它被频繁调用。用户打字时是否有任何本地方法可以增加延迟时间?

在此处输入图像描述

4

1 回答 1

2

您应该使用一种名为 debouncing 的技术。这个想法是在有点过期延迟之后从您的操作(您连接到“结束编辑”)内部执行一个方法。每次新按键都会重置计时器,该计时器具有固定的延迟。在用户继续输入之前,搜索不会执行。一旦他停下来,最后一个反跳计时器就会启动,你的搜索就会完成。

此处提供更多信息: 如何消除方法调用的抖动?

于 2016-12-02T04:40:50.727 回答