Le Tutoriel de Android AutoCompleteTextView et MultiAutoCompleteTextView
View more Tutorials:


- TODO: More About AutoComplete.
Créez un projet nommé AndroidAutoCompleteTextView:
- File > New > New Project > Empty Activity
- Name: AndroidAutoCompleteTextView
- Package name: org.o7planning.androidautocompletetextview
- Language: Java
L'interface de l'application:

If you are interested in the steps to design this application interface, see the appendix at the end of the article.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/textView" android:layout_width="0dp" android:layout_height="40dp" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="30dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" android:text="Full name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <EditText android:id="@+id/editText" android:layout_width="0dp" android:layout_height="46dp" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="31dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" android:ems="10" android:inputType="textPersonName" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView" /> <TextView android:id="@+id/textView2" android:layout_width="0dp" android:layout_height="37dp" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="32dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" android:text="Country" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/editText" /> <AutoCompleteTextView android:id="@+id/autoCompleteTextView" android:layout_width="0dp" android:layout_height="53dp" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="25dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView2" /> <TextView android:id="@+id/textView3" android:layout_width="0dp" android:layout_height="32dp" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="26dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" android:text="Programming Languages" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/autoCompleteTextView" /> <MultiAutoCompleteTextView android:id="@+id/multiAutoCompleteTextView" android:layout_width="0dp" android:layout_height="51dp" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="22dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView3" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="34dp" android:text="Submit" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/multiAutoCompleteTextView" /> </androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java
package org.o7planning.androidautocompletetextview; import android.os.Bundle; import android.view.View; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.Button; import android.widget.EditText; import android.widget.MultiAutoCompleteTextView; import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { private EditText textFullname; private AutoCompleteTextView textCountry; private MultiAutoCompleteTextView textProgrammingLanguage; private Button buttonSubmit; private String[] countries = {"Vietnam","England","Canada", "France","Australia"}; private String[] languages={"Java ","CSharp","Visual Basic","Swift","C/C++"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textFullname = (EditText) findViewById(R.id.editText); textCountry =(AutoCompleteTextView)findViewById(R.id.autoCompleteTextView); textProgrammingLanguage =(MultiAutoCompleteTextView)findViewById(R.id.multiAutoCompleteTextView); buttonSubmit= (Button) findViewById(R.id.button); ArrayAdapter adapterCountries = new ArrayAdapter(this,android.R.layout.simple_list_item_1,countries); textCountry.setAdapter(adapterCountries); // Set the minimum number of characters, to show suggestions textCountry.setThreshold(1); ArrayAdapter adapterLanguages = new ArrayAdapter(this,android.R.layout.simple_list_item_1,languages); textProgrammingLanguage.setAdapter(adapterLanguages); textProgrammingLanguage.setThreshold(1); // The text separated by commas textProgrammingLanguage.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); buttonSubmit.setOnClickListener(new Button.OnClickListener(){ @Override public void onClick(View v) { submitForm(); } }); } private void submitForm() { String text="Fullname: "+ this.textFullname.getText().toString() +"\nCountry: "+ this.textCountry.getText().toString() +"\nLanguages: "+ this.textProgrammingLanguage.getText().toString(); Toast.makeText(this, text,Toast.LENGTH_LONG).show(); } }
L'exécution de l'application:

Drag and drop components into the interface

Set constraints:

Set ID, Text for components on the interface:
