Android中AutoCompleteTextView中的大数字数组

时间:2012-03-16 12:13:40

标签: android arrays autocompletetextview

我需要在AutoCompleteTextView的建议中显示城市名称。 我已将所有名称保存在res/values/strings.xml的数组中。 但它是一个大数组。它接近 15,000 名称。

但我担心这可能会造成一些内存问题。还有其他方法可以在android中保存这么多数据吗?

我认为最好的方法是创建一个网络服务,但是有没有其他解决方案可用而不是网络服务,因为我对网络服务不太熟悉?

1 个答案:

答案 0 :(得分:0)

如果您拥有大量数据,那么最好选择ListViews而不是使用AutoCompleteTextView。通过将Textview保持在该Listview之上来向该Listview添加搜索功能。每个适配器都有getFilter

我们可以通过它过滤List。这也很容易。

第二个选项:将strings.xml保存在XML或原始文件夹中,并使用sax或Dom解析器解析它。

最后,据我所知,将数据保存在strings.xml中将增加apk大小,但不会增加堆。即使你从本地或Webservice带来XML,无论如何你需要在所有方面将它保存在堆中。