Android: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中遇到了一个奇怪的问题。我的代码如下:

    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。我习惯于在代码开头初始化列表,然后将其设置为适配器。在这个应用程序中,我必须从互联网上提取一些数据,然后填充列表。