android - 从android中的10,000个项目列表中选择任何项目

标签 android android-listview autocompletetextview

我尝试搜索所有问题,看看是否有与我的问题类似的线程,但到目前为止还没有找到。 这是我的问题:我有一个产品列表,其中包含存储在 SQLite 数据库中的约 10,000 个项目。在我的应用程序中,我需要搜索此列表中的任何项目。我有几个选择:

  • 使用 autoCompleteTextView,预加载所有产品,当我键入产品名称时,列表会建议该产品,因此我只需要从建议中进行选择。这是最简单的方法,但我觉得加载 10,000 个项目(或者将来会更多)会很重
  • 当我输入任何字符并单击搜索时,该应用程序会使用该字符作为过滤器从数据库中选择所有产品。然后将结果集提供给某个 ListView ,以便我可以选择任何项目。这种方法可以节省内存,因为应用程序不会将所有项目加载到内存中,而只会加载包含过滤字符的项目。

有没有更好的方法来做到这一点? 谢谢

最佳答案

您的第二个选择是最好的方法。它类似于您在输入查询时获得推荐搜索结果列表的方式。对于您来说,假设您使用 asynctask 来查询您的数据库,您可以通过 onProgressUpdate 发出正确的加载消息

关于android - 从android中的10,000个项目列表中选择任何项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7830848/

相关文章:

Android Universal Image Loader 存储下载进度 ListView

android - 在 Android "The file format is not supported."错误中在 whatsapp 上共享图像

大约 2012 年的 Android 支付平台选项

android - 在运行时构建布局 android

android - OnFling 和其他方法不适用于 ListView 中的 TextView

android - TextInputLayout 和 AutoCompleteTextView

java - 自动完成 TextView 的选定项目显示为简单的 TextView ?

android - 如何向 AutoCompleteTextView 建议添加空间

android - 如何为底部导航制作导航图?有没有办法修改返回堆栈的行为?

java - 如何监听多个 GlobalLayout 事件