Android AutoCompleteTextView: Beispiele und Best Practices
In diesem Blogbeitrag lernen Sie, wie Sie das AutoCompleteTextView
in Ihrer Android-App implementieren, um die Eingabe für Benutzer zu vereinfachen. Wir zeigen Ihnen Schritt für Schritt, wie Sie mit einem ArrayAdapter
eine Liste von Vorschlägen einbinden und die wichtigsten Methoden optimal nutzen. Entdecken Sie die Vorteile dieser praktischen Komponente und verbessern Sie die Benutzerfreundlichkeit Ihrer App.
Verwendung von AutoCompleteTextView
Ein AutoCompleteTextView
wird verwendet, um Vorschläge während des Schreibens in einem editierbaren Textfeld anzuzeigen. Die Vorschlagsliste wird in einem Dropdown-Menü angezeigt, aus dem der Benutzer den gewünschten Eintrag auswählen kann. Die Liste der Vorschläge wird von einem Adapter bezogen und erscheint nur nach einer bestimmten Anzahl von Zeichen, die im Schwellenwert (threshold
) festgelegt sind. Um ein AutoCompleteTextView
zu verwenden, muss es im XML-Layout wie folgt definiert werden:
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="65dp"
android:ems="10" />
Wichtige Methoden
Einige wichtige Methoden des AutoCompleteTextView
sind:
getAdapter()
: Gibt den filterbaren Listenadapter zurück, der für die Autovervollständigung verwendet wird.getCompletionHint()
: Gibt optionalen Hinweistext zurück, der am unteren Rand der passenden Liste angezeigt wird.getDropDownAnchor()
: Gibt die ID der Ansicht zurück, an die die Autovervollständigungs-Dropdown-Liste angehängt ist.getListSelection()
: Gibt die Position der Dropdown-Ansichtsauswahl zurück, falls vorhanden.isPopupShowing()
: Zeigt an, ob das Popup-Menü angezeigt wird.setText(CharSequence text, boolean filter)
: Setzt den Text und kann das Filtern deaktivieren.showDropDown()
: Zeigt das Dropdown-Menü auf dem Bildschirm an.
Die setAdapter
-Methode wird verwendet, um den Adapter des AutoCompleteTextView
festzulegen. Schauen wir uns den Code-Teil an.
Projektstruktur für AutoCompleteTextView
Dieses Projekt enthält ein einfaches TextView
und ein AutoCompleteTextView
im Layout der MainActivity
. Der ArrayAdapter
enthält die folgenden Früchte: Apfel, Banane, Kirsche, Dattel, Traube, Kiwi, Mango, Birne.
Beispielcode für Android AutoCompleteTextView
Das Layout der MainActivity
wird wie folgt definiert (activity_main.xml
):
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="..."/>