Show all items in AutocompleteTextView without writing text

前端 未结 12 797
萌比男神i
萌比男神i 2020-12-29 01:05

I have a AutocompleteTextView and it works fine. When I write a word it shows the relevant result but I want to show all items without writing any word in AutocompleteTextVi

12条回答
  •  -上瘾入骨i
    2020-12-29 01:56

    You need to extend AutoCompleteTextView,

    "When threshold is less than or equals 0, a threshold of 1 is applied.".

    setThreshold

    import android.content.Context;  
    import android.graphics.Rect;
    import android.util.AttributeSet;
    import android.widget.AutoCompleteTextView;
    
    public class InstantAutoComplete extends AutoCompleteTextView {
    
        public InstantAutoComplete(Context context) {
            super(context);
        }
    
        public InstantAutoComplete(Context arg0, AttributeSet arg1) {
            super(arg0, arg1);
        }
    
        public InstantAutoComplete(Context arg0, AttributeSet arg1, int arg2) {
            super(arg0, arg1, arg2);
        }
    
        @Override
        public boolean enoughToFilter() {
            return true;
        }
    
        @Override
        protected void onFocusChanged(boolean focused, int direction,
                Rect previouslyFocusedRect) {
            super.onFocusChanged(focused, direction, previouslyFocusedRect);
           if (focused && getFilter()!=null) {
            performFiltering(getText(), 0);
        }
        }
    
    }
    

    in xml

     to 
    

    EDIT 1

    Create new class named InstantAutoComplete then put this code into the class.

    In your layout xml use this class like

    then find this widget in your actity (onCreate method).

    Look at this example

提交回复
热议问题