Hiding Listview until search is initiated

╄→尐↘猪︶ㄣ 提交于 2020-01-07 03:52:11

问题


I have a question: I have a listview (from custom adapter) with a searchbar on top of it. Everything works ok, the only thing I need is when opening the activity to keep the listview hidden, or invisible, until the search has started in the searchbar (in other words, to keep the listview hidden until I start typing something in the searchbar).

You can find the code here:

How to start new intent after search-filtering listview?

Plus a suggested solution, which unfortunately did not work, you can see here:

Android search list invisible by default? Can it be done?

I am looking forward to your replies guys and I thank you in advance.


回答1:


Try adding TextWatcher to your search EditText. This will detect when you type something in your search:

EditText search= (EditText) findViewById(R.id.search);
search.addTextChangedListener(filterTextWatcher);

TextWatcher method:

    private TextWatcher filterTextWatcher = new TextWatcher() {

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) 
{
         //Change the visibility here
         list.setVisibility(View.VISIBLE);

        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    };



回答2:


I think you may be thinking about an AutoCompleteTextView? It requires that you load the list data into its adapter then set the adapter.

// Get a reference to the AutoCompleteTextView in the layout
AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_country);
// Get the string array
String[] countries = getResources().getStringArray(R.array.countries_array);
// Create the adapter and set it to the AutoCompleteTextView 
ArrayAdapter<String> adapter = 
    new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, countries);
textView.setAdapter(adapter);

Google's Guide: here.



来源:https://stackoverflow.com/questions/33748155/hiding-listview-until-search-is-initiated

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!