gpt4 book ai didi

android 编辑文本 : detect when user stops editing

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:33:59 25 4
gpt4 key购买 nike

我有一个 editText,代表搜索条件的输入。我想知道是否有一种方法可以检测用户何时停止编辑此 editText,以便我可以在数据库中查询我的列表数据。例如,如果用户键入“test”,我希望仅在用户键入单词后收到通知,而不是在用户键入每个字母后收到通知,就像文本观察器那样。你有什么想法?我会避免使用一些计时器来测量按键事件之间经过的毫秒数。

最佳答案

不是非常优雅,但这应该可行。

初始化:

long idle_min = 4000; // 4 seconds after user stops typing
long last_text_edit = 0;
Handler h = new Handler();
boolean already_queried = false;

设置将从文本观察器调用的可运行对象:

private Runnable input_finish_checker = new Runnable() {
public void run() {
if (System.currentTimeMillis() > (last_text_edit + idle_min - 500)) {
// user hasn't changed the EditText for longer than
// the min delay (with half second buffer window)
if (!already_queried) { // don't do this stuff twice.
already_queried = true;
do_stuff(); // your queries
}
}
}
};

把这个放在你的文本观察器中:

last_text_edit = System.currentTimeMillis();
h.postDelayed(input_finish_checker, idle_min);

关于android 编辑文本 : detect when user stops editing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15496775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com