在我的应用程序中有一段时间,无论用户输入什么,我都需要强制显示建议列表中的所有项目.我怎样才能做到这一点?
我试图做一些过滤,但对我来说,初学者过滤只是太复杂了,我尝试搜索初学者教程进行过滤,没有任何运气.也许,有一个更简单的方法强制显示所有的建议项目?
编辑:
基本上我的想法是什么,当用户在列表中输入什么东西时,会显示所有可用的选项.
我找到了检查ACTV是否显示的天气的最佳方法,但是onTextChangeEvent将用户输入的文本与我的列表进行比较,然后如果没有找到任何元素显示完整列表.
public void onTextChanged(CharSequence s,int start,int before,int count) { final EditText editText = (EditText) findViewById(R.id.vardsUserInput); String strValue = editText.getText().toString().toUpperCase(); String temp; int Cc=0; //my count variable for(int i=0; i<vardi.length; i++) { temp = vardi[i].toUpperCase(); if(temp.startsWith(strValue.toUpperCase())) { Log.d("testing",vardi[i]); Cc++; } } if(Cc == 0) { //Show all the available options textView.showDropDown(); } }
解决方法
当你想显示所有的结果时,你不要定义“时刻”,所以我希望这样适合.但是尝试这样的东西:
AutoCompleteTextView autoComplete; String savedText; public void showAll() { savedText = autoComplete.getText().toString(); autoComplete.setText(""); autoComplete.showDropDown(); } public void restore() { autoComplete.setText(savedText); }