gpt4 book ai didi

android - 更新 UI 时响应键盘

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:42:20 24 4
gpt4 key购买 nike

我正在使用 android.support.v7.widget.SearchView 并在 SearchView 中输入每个字符时执行搜索。以下是 fragment 。

searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener()
{

@Override
public boolean onQueryTextSubmit(String query)
{
return false;
}

@Override
public boolean onQueryTextChange(String newText)
{

if (!newText.trim().equals(""))
{
displayResult(newText);
return false;
}
}
});

我在获取结果时更新 UI,所以在我的例子中,每次用户输入单个字符时它都会调用 Search API。因此,假设用户想要搜索“澳大利亚”并尝试输入整个单词,但我的 UI 正在使用搜索进行更新,并且用户在键盘没有响应后刚刚键入“Aus”,因为它正在更新 UI。

所以我只想在更新 UI 时响应键盘。
希望我能得到快速响应。

最佳答案

您的案例场景是:

  1. 输入文字

  2. 执行搜索

  3. 显示结果

  4. 再做一次

滞后的发生是因为 (2) + (3) 花费了很多时间。

尝试将搜索键从 (1) 发送到工作线程(AsyncTask、Thread、IntentService 等)。

(2) 将在工作线程上执行,然后将结果推送回 UI

(3) 更新界面

为了提高性能,我认为您应该在用户停止输入一段时间后执行搜索。此外,如果输入发生变化,停止不必要的搜索。

例子:input1 > search1 > input2 > cancel old task1 > search2 > ...

希望对您有所帮助!

关于android - 更新 UI 时响应键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37720867/

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