我想在我的应用程序中添加AutoCompleteTextView。我有一个txt文件,存在超过2000条记录。我想将它用于AutoCompleteTextView。通常对于小数据,我们使用数组:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.select_dialog_item,dataArray);
AutoCompleteTextView actv= (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
actv.setThreshold(1);
actv.setAdapter(adapter);
但是现在如何使用txt文件进行AutoCompleteTextView。任何建议将不胜感激。
答案 0 :(得分:2)
如何分隔文本文件中的元素?假设您在每一行上都有一个新元素,您可以使用它将文件转换为数组,使用上面提到的数组适配器。
String[] arr= null;
List<String> items= new ArrayList<String>();
try
{
FileInputStream fstream = new FileInputStream("text1.txt");
DataInputStream data_input = new DataInputStream(fstream);
BufferedReader buffer = new BufferedReader(new InputStreamReader(data_input));
String str_line;
while ((str_line = buffer.readLine()) != null)
{
str_line = str_line.trim();
if ((str_line.length()!=0))
{
items.add(str_line);
}
}
arr = (String[])items.toArray(new String[items.size()]);
}
答案 1 :(得分:2)
create one string resource file like "string_autocompletearray" and define your array.
**res/values/string_autocompletearray.xml**
string-array name="autocomplete_array">
<item>AutoCompleteText 1 </item>
<item>AutoCompleteText 2 </item>
-------------------------------
-------------------------------
<item>AutoCompleteText N </item>
</string-array>
**Now find this array and set to adapter**
ArrayList<String> list = new ArrayList<String> (Arrays.asList(getResources().getStringArray(R.array.autocomplete_array)));