How to get text from AutoCompleteTextView?

前端 未结 9 1711
青春惊慌失措
青春惊慌失措 2020-12-05 04:25

I have an AutoCompleteTextView in my app which works. I have successfully created an onClickItemListener. The question is how to grab the text the

相关标签:
9条回答
  • 2020-12-05 04:51

    Yeah... unfortunately the name of the parameters on the onItemClick method you must implement are not so self-descriptive but here is an example with the names of what they are:

    autoCompleteTextView.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long rowId) {
            String selection = (String)parent.getItemAtPosition(position);
            //TODO Do something with the selected text
        }
    });
    
    • parent The AdapterView where the click happened.
    • view The view within the AdapterView that was clicked (this will be a view provided by the adapter)
    • position The position of the view in the adapter
    • id The row id of the item that was clicked.

    For more info see: http://developer.android.com/reference/android/widget/AdapterView.OnItemClickListener.html

    0 讨论(0)
  • 2020-12-05 04:52

    One another of getting text of suggestion selected in AutoCompleteTextView is

    @Override
    public void onItemClick(AdapterView<?> parent, View view,int position, long id) 
    {
        TextView txtvw=(TextView) view;
        String str=txtvw.getText().toString();
        int index = contactNames.indexOf(str);
    } 
    
    0 讨论(0)
  • 2020-12-05 04:57

    I think what you are looking for is this.

    String s = this.mCountry.getEditableText().toString();
    

    Where mCountry is the AutoCompleteTextView.

    this.mCountry = (AutoCompleteTextView) findViewById(R.id.autocomplete_country);
        ArrayAdapter<String> adapterCountry = new ArrayAdapter<String>(this, R.layout.list_item, countries);
        this.mCountry.setAdapter(adapterCountry);
    

    mCountry is the list of countries, and I wanted to save the country selected in SharedPreferences.

    Hope this helps.

    0 讨论(0)
  • 2020-12-05 04:57

    Here is the code that will solve the problem.

     private AdapterView.OnItemClickListener onItemClickListener = new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
            int index = (int) view.getTag();
            Object item = parent.getItemAtPosition(index);
            if (item instanceof SearchItemShareConnectionDAO) {
                SearchItemShareConnectionDAO dao = (SearchItemShareConnectionDAO) item;
    
            }
        }
    };
    

    SetTag(Dao.getPosition) in getView() method of adapter.

    0 讨论(0)
  • 2020-12-05 04:58

    try this:

    txtPurpose.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    
            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                                    long arg3) {
                Purpose selected = (Purpose) arg0.getAdapter().getItem(arg2);
                txtPurpose.setTag(selected);
            }
        });
    
    0 讨论(0)
  • 2020-12-05 05:03

    arg0 being your AdapterView and arg2 the position.

    Have you tried:

    arg0.getItemAtPosition(arg2);
    
    0 讨论(0)
提交回复
热议问题