Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Die Chip-Komponente ist ein kompaktes, interaktives UI-Element. Sie repräsentiert komplexe Einheiten wie einen Kontakt oder ein Tag, oft mit einem Symbol und einem Label. Sie kann aktiviert, geschlossen oder angeklickt werden.
Die vier Arten von Chips und ihre möglichen Anwendungsbereiche sind:
Assist (Unterstützen): Führt den Nutzer durch eine Aufgabe. Wird häufig als temporäres UI-Element als Reaktion auf Nutzereingaben angezeigt.
Filter: Nutzer können Inhalte anhand einer Reihe von Optionen filtern. Sie können ausgewählt oder abgewählt werden und enthalten bei Auswahl möglicherweise ein Häkchensymbol.
Eingabe: Stellt von Nutzern bereitgestellte Informationen dar, z. B. Auswahlen in einem Menü. Sie können ein Symbol und Text enthalten und ein X zum Entfernen bereitstellen.
Vorschlag: Bietet dem Nutzer Empfehlungen basierend auf seinen letzten Aktivitäten oder Eingaben. Sie werden in der Regel unter einem Eingabefeld angezeigt, um Nutzeraktionen zu veranlassen.
Abbildung 1. Die vier Chipkomponenten.
API-Oberfläche
Es gibt vier Composables, die den vier Arten von Chips entsprechen. In den folgenden Abschnitten werden diese Composables und ihre Unterschiede im Detail beschrieben.
Sie haben jedoch die folgenden Parameter gemeinsam:
label: Der String, der auf dem Chip angezeigt wird.
icon: Das Symbol, das am Anfang des Chipherstellers angezeigt wird. Einige der spezifischen Composables haben einen separaten leadingIcon- und trailingIcon-Parameter.
onClick: Die Lambda-Funktion, die vom Chip aufgerufen wird, wenn der Nutzer darauf tippt.
Assist-Chip
Mit der zusammensetzbaren Funktion AssistChip lässt sich ganz einfach ein Assist-Chip erstellen, der den Nutzer in eine bestimmte Richtung lenkt. Ein besonderes Merkmal ist der Parameter leadingIcon, mit dem Sie ein Symbol auf der linken Seite des Chips anzeigen lassen können. Das folgende Beispiel zeigt, wie Sie das umsetzen können:
Für die zusammensetzbare Funktion FilterChip müssen Sie erfassen, ob der Chip ausgewählt ist. Im folgenden Beispiel wird gezeigt, wie Sie ein führendes Häkchensymbol nur dann einblenden, wenn der Nutzer den Chip ausgewählt hat:
So sieht die Implementierung aus, wenn sie nicht ausgewählt ist:
Abbildung 3: Nicht ausgewähltes Infofeld für Filter.
So sieht die Option aus, wenn sie ausgewählt ist:
Abbildung 4. Ausgewähltes Infofeld für Filter
Eingabe-Chip
Mit der zusammensetzbaren Funktion InputChip können Sie Chips erstellen, die aus der Nutzerinteraktion resultieren. Wenn ein Nutzer beispielsweise in einem E‑Mail-Client eine E‑Mail schreibt, kann ein Eingabe-Chip einen Kontakt darstellen, den der Nutzer dem Feld „An:“ hinzugefügt hat.
Die folgende Implementierung zeigt einen Eingabe-Chip, der sich bereits im ausgewählten Zustand befindet. Der Nutzer schließt den Chip, indem er darauf tippt.
Das Composable SuggestionChip ist das einfachste der auf dieser Seite aufgeführten Composables, sowohl in Bezug auf die API-Definition als auch auf die gängigen Anwendungsfälle. Vorschlags-Chips enthalten dynamisch generierte Hinweise. In einer KI-Chat-App könnten Sie beispielsweise Vorschlagschips verwenden, um mögliche Antworten auf die letzte Nachricht zu präsentieren.
Sehen Sie sich diese Implementierung von SuggestionChip an:
In allen Beispielen in diesem Dokument werden die Basis-Composables verwendet, die ein flaches Erscheinungsbild haben. Wenn Sie einen Chip mit einem erhöhten Erscheinungsbild wünschen, verwenden Sie eines der drei folgenden Composables:
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2025-08-27 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-08-27 (UTC)."],[],[],null,["The `Chip` component is a compact, interactive UI element. It represents complex\nentities like a contact or tag, often with an icon and label. It can be\ncheckable, dismissible, or clickable.\n\nThe four types of chips and where you might use them are as follows:\n\n- **Assist**: Guides the user during a task. Often appears as a temporary UI element in response to user input.\n- **Filter**: Allows users to refine content from a set of options. They can be selected or deselected, and may include a checkmark icon when selected.\n- **Input** : Represents user-provided information, such as selections in a menu. They can contain an icon and text, and provide an **X** for removal.\n- **Suggestion**: Provides recommendations to the user based on their recent activity or input. Typically appear beneath an input field to prompt user actions.\n\n**Figure 1.** The four chip components.\n\nAPI surface\n\nThere are four composables that correspond to the four types of chips. The\nfollowing sections outline these composables and their differences in detail.\nHowever, they share the following parameters:\n\n- **`label`**: The string that appears on the chip.\n- **`icon`** : The icon displayed at the start of the chip. Some of the specific composables have a separate `leadingIcon` and `trailingIcon` parameter.\n- **`onClick`**: The lambda that the chip calls when the user presses it.\n\nAssist chip\n\nThe [`AssistChip`](/reference/kotlin/androidx/compose/material3/package-summary#AssistChip(kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.material3.ChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource)) composable provides a straightforward way to create an\nassist chip that nudges the user in a particular direction. One distinguishing\nfeature is its `leadingIcon` parameter that lets you display an icon on the left\nside of the chip. The following example demonstrates how you can implement it:\n\n\n```kotlin\n@Composable\nfun AssistChipExample() {\n AssistChip(\n onClick = { Log.d(\"Assist chip\", \"hello world\") },\n label = { Text(\"Assist chip\") },\n leadingIcon = {\n Icon(\n Icons.Filled.Settings,\n contentDescription = \"Localized description\",\n Modifier.size(AssistChipDefaults.IconSize)\n )\n }\n )\n}https://github.com/android/snippets/blob/5673ffc60b614daf028ee936227128eb8c4f9781/compose/snippets/src/main/java/com/example/compose/snippets/components/Chip.kt#L72-L85\n```\n\n\u003cbr /\u003e\n\nThis implementation appears as follows.\n**Figure 2.** Assist chip.\n\nFilter chip\n\nThe [`FilterChip`](/reference/kotlin/androidx/compose/material3/package-summary#FilterChip(kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.SelectableChipColors,androidx.compose.material3.SelectableChipElevation,androidx.compose.material3.SelectableChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource)) composable requires you to track whether or not the chip\nis selected. The following example demonstrates how you can show a leading\nchecked icon only when the user has selected the chip:\n\n\n```kotlin\n@Composable\nfun FilterChipExample() {\n var selected by remember { mutableStateOf(false) }\n\n FilterChip(\n onClick = { selected = !selected },\n label = {\n Text(\"Filter chip\")\n },\n selected = selected,\n leadingIcon = if (selected) {\n {\n Icon(\n imageVector = Icons.Filled.Done,\n contentDescription = \"Done icon\",\n modifier = Modifier.size(FilterChipDefaults.IconSize)\n )\n }\n } else {\n null\n },\n )\n}https://github.com/android/snippets/blob/5673ffc60b614daf028ee936227128eb8c4f9781/compose/snippets/src/main/java/com/example/compose/snippets/components/Chip.kt#L90-L112\n```\n\n\u003cbr /\u003e\n\nThis implementation appears as follows when unselected:\n**Figure 3.** Unselected filter chip.\n\nAnd appears as follows when selected:\n**Figure 4.** Selected filter chip.\n\nInput chip\n\nYou can use the [`InputChip`](/reference/kotlin/androidx/compose/material3/package-summary#InputChip(kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.SelectableChipColors,androidx.compose.material3.SelectableChipElevation,androidx.compose.material3.SelectableChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource)) composable to create chips that result from\nuser interaction. For example, in an email client, when the user is writing an\nemail, an input chip might represent a contact the user has added to the \"To:\"\nfield.\n\nThe following implementation demonstrates an input chip that is already in a\nselected state. The user dismisses the chip when they press it.\n| **Note:** Consider how you might use a chip like this in the preceding email use case, with a name passed in for the `label` parameter, and a function that performs the necessary network calls for `onDismiss`.\n\n\n```kotlin\n@Composable\nfun InputChipExample(\n text: String,\n onDismiss: () -\u003e Unit,\n) {\n var enabled by remember { mutableStateOf(true) }\n if (!enabled) return\n\n InputChip(\n onClick = {\n onDismiss()\n enabled = !enabled\n },\n label = { Text(text) },\n selected = enabled,\n avatar = {\n Icon(\n Icons.Filled.Person,\n contentDescription = \"Localized description\",\n Modifier.size(InputChipDefaults.AvatarSize)\n )\n },\n trailingIcon = {\n Icon(\n Icons.Default.Close,\n contentDescription = \"Localized description\",\n Modifier.size(InputChipDefaults.AvatarSize)\n )\n },\n )\n}https://github.com/android/snippets/blob/5673ffc60b614daf028ee936227128eb8c4f9781/compose/snippets/src/main/java/com/example/compose/snippets/components/Chip.kt#L118-L148\n```\n\n\u003cbr /\u003e\n\nThis implementation appears as follows.\n**Figure 5.** Input chip.\n\nSuggestion chip\n\nThe [`SuggestionChip`](/reference/kotlin/androidx/compose/material3/package-summary#SuggestionChip(kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.material3.ChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource)) composable is the most basic of the composables listed\non this page, both in its API definition and its common use cases. Suggestion\nchips present dynamically generated hints. For example, in an AI chat app, you\nmight use suggestion chips to present possible responses to the most recent\nmessage.\n\nConsider this implementation of `SuggestionChip`:\n\n\n```kotlin\n@Composable\nfun SuggestionChipExample() {\n SuggestionChip(\n onClick = { Log.d(\"Suggestion chip\", \"hello world\") },\n label = { Text(\"Suggestion chip\") }\n )\n}https://github.com/android/snippets/blob/5673ffc60b614daf028ee936227128eb8c4f9781/compose/snippets/src/main/java/com/example/compose/snippets/components/Chip.kt#L153-L159\n```\n\n\u003cbr /\u003e\n\nThis implementation appears as follows:\n**Figure 6.** Suggestion chip. **Note:** Although the suggestion chip component is intended for informational purposes, it does still take an `onClick` lambda that you can use to create interactivity.\n\nElevated chip\n\nAll the examples in this document use the base composables that take a flat\nappearance. If you want a chip that has an elevated appearance, use one of the\nthree following composables:\n\n- [`ElevatedAssistChip`](/reference/kotlin/androidx/compose/material3/package-summary#ElevatedAssistChip(kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.material3.ChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource))\n- [`ElevatedFilterChip`](/reference/kotlin/androidx/compose/material3/package-summary#ElevatedFilterChip(kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.SelectableChipColors,androidx.compose.material3.SelectableChipElevation,androidx.compose.material3.SelectableChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource))\n- [`ElevatedSuggestionChip`](/reference/kotlin/androidx/compose/material3/package-summary#ElevatedSuggestionChip(kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.material3.ChipBorder,androidx.compose.foundation.interaction.MutableInteractionSource))\n\nAdditional resources\n\n- [Material UI docs](https://m3.material.io/components/chips/overview)"]]