我尝试搜索所有问题,看看是否有与我的问题类似的线程,但到目前为止还没有找到。 这是我的问题:我有一个产品列表,其中包含存储在 SQLite 数据库中的约 10,000 个项目。在我的应用程序中,我需要搜索此列表中的任何项目。我有几个选择:
- 使用 autoCompleteTextView,预加载所有产品,当我键入产品名称时,列表会建议该产品,因此我只需要从建议中进行选择。这是最简单的方法,但我觉得加载 10,000 个项目(或者将来会更多)会很重
- 当我输入任何字符并单击搜索时,该应用程序会使用该字符作为过滤器从数据库中选择所有产品。然后将结果集提供给某个 ListView ,以便我可以选择任何项目。这种方法可以节省内存,因为应用程序不会将所有项目加载到内存中,而只会加载包含过滤字符的项目。
有没有更好的方法来做到这一点? 谢谢
最佳答案
您的第二个选择是最好的方法。它类似于您在输入查询时获得推荐搜索结果列表的方式。对于您来说,假设您使用 asynctask 来查询您的数据库,您可以通过 onProgressUpdate 发出正确的加载消息
关于android - 从android中的10,000个项目列表中选择任何项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7830848/