Android:AutocompleteTextView怪异行为
我在AutoCompleteTextView中遇到了一个奇怪的问题。我的代码如下:Android:AutocompleteTextView怪异行为,android,autocompletetextview,Android,Autocompletetextview,我在AutoCompleteTextView中遇到了一个奇怪的问题。我的代码如下: AutoCompleteTextView searchText = //findView... private ArrayList<String> suggestions = null; private ArrayAdapter<String> suggestionAdapter = null; suggestionAdapter = new ArrayAdapter<St
AutoCompleteTextView searchText = //findView...
private ArrayList<String> suggestions = null;
private ArrayAdapter<String> suggestionAdapter = null;
suggestionAdapter = new ArrayAdapter<String>(this, R.layout.list, suggestions);
searchText.setAdapter(suggestionAdapter);
AutoCompleteTextView searchText=//findView。。。
私有ArrayList建议=null;
private ArrayAdapter suggestionAdapter=null;
SuggestionaAdapter=新阵列适配器(此,R.layout.list,建议);
searchText.setAdapter(suggestionAdapter);
在代码中,我在for循环中填充arrayList
for (int i = 0; i < nl.getLength(); i++) {
Element suggestion = (Element)nl.item(i);
String name = suggestion.getAttribute("data");
suggestions.add(name);
}
suggestionAdapter.notifyDataSetChanged();
for(int i=0;i
在我输入文本视图时,这不会显示建议
但是,当我将任何字符串添加到for循环之外的arraylist中时(比如,在循环之后),我能够看到建议。这两个小时来一直困扰着我。如有任何建议,将不胜感激
相信我,我正在输入一个已知的文本,我正在for循环中填充它
for (int i = 0; i < nl.getLength(); i++) {
Element suggestion = (Element)nl.item(i);
String name = suggestion.getAttribute("data");
suggestions.add(name);
}
suggestionAdapter.notifyDataSetChanged();
谢谢!
Rahul.在for循环后放置以下行
for (int i = 0; i < nl.getLength(); i++) {
Element suggestion = (Element)nl.item(i);
String name = suggestion.getAttribute("data");
suggestions.add(name);
}
suggestionAdapter.notifyDataSetChanged();
或
在第一个代码中放入以下行
suggestionAdapter.setNotifyOnChange(true)
更多细节
,请勿在forloop之前设置适配器。将所有字符串添加到字符串的ArrayList中,并在for循环后使用以下命令:
suggestionAdapter = new ArrayAdapter<String>(this, R.layout.list, suggestions);
AutoCompleteTextView searchText = //findView...
searchText.setAdapter(suggestionAdapter);
suggestionAdapter=newarrayadapter(这个,R.layout.list,suggestions);
AutoCompleteTextView searchText=//findView。。。
searchText.setAdapter(suggestionAdapter);
希望这能奏效。但这是一个显而易见的逻辑。如果这是你已经做过的。请务必发布完整的活动代码,或者至少发布与AutoCompleteTextView和适配器相关的所有代码。只想看看代码流程,阿奇!!!你救了我。是的,这是一个明显的代码。在我早期的应用程序中,我从未动态设置arrayList。我习惯于在代码开头初始化列表,然后将其设置为适配器。在这个应用程序中,我必须从互联网上提取一些数据,然后填充列表。