Esempio AutoCompleteTextView

Il componente AutoCompleteTextView e' simile ad un EditText ma propone all'utente un elenco di opzioni da selezionare.

 

Creare un nuovo progetto android chiamato HelloAutoCompleteTextView

 

Aggiungere al layout un componente di tipo AutoCompleteTextView con id autocomplete

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" android:layout_width="fill_parent"
	android:layout_height="fill_parent">
 
	<AutoCompleteTextView android:id="@+id/autocomplete"
		android:layout_width="fill_parent" 
		android:layout_height="wrap_content" />
 
</LinearLayout>

 

Aggiungere alla activity il codice per gestire l'autocomplete

        AutoCompleteTextView autocomplete = (AutoCompleteTextView) findViewById(R.id.autocomplete);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(
        		this,
        		android.R.layout.simple_dropdown_item_1line, 
        		new String[] {"paperina","paperone","paperino","paperoga"}
        	);
        autocomplete.setAdapter(adapter);

 

e un listener per gestire la selezione dell'utente

        autocomplete.setOnItemClickListener(new OnItemClickListener() {
        	@Override
        	public void onItemClick(AdapterView<?> adapter, View view, int pos,long id) {
        		String selected = (String)adapter.getItemAtPosition(pos);
        		Toast.makeText(
        				getApplicationContext(), 
        				"hai selezionato "+selected, 
        				Toast.LENGTH_LONG
        			).show();
        	}
		});

 

oppure e' possibile leggere il valore presente nel campo come per una TextView

        String valore = autocomplete.getText().toString();

AttachmentSize
HelloAutoCompleteTextView.zip45.61 KB