Saltearse al contenido

DropdownMenuItem

MaterialMaterial 3
Imagen del componente - Material [DropdownMenuItem]Imagen del componente - Material 3 [DropdownMenu]

DropdownMenuItem es un composable que representa un ítem dentro de un menú desplegable en Jetpack Compose. Es útil para mostrar una lista de opciones que el usuario puede seleccionar.

Implementación

Definición del componente

Terminal window
@Composable
fun DropdownMenuItem(
onClick: () -> Unit,
modifier: Modifier = Modifier,
enabled: Boolean = true,
contentPadding: PaddingValues = MenuDefaults.ItemContentPadding,
interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },
content: @Composable RowScope.() -> Unit
)

Los parámetros del componente en Material son los siguientes:

AtributoDescripción
onClickLambda que se invoca cuando se hace clic en el ítem.
modifierModificador que implementará el composable.
enabledIndica si el ítem está habilitado para interacción.
contentPaddingEspaciado interno alrededor del contenido del ítem.
interactionSourceFuente de interacción para manejar las interacciones del usuario.
contentContenido composable que se mostrará dentro del ítem.

Ejemplo de uso

Imagen del componente DropdownMenu- Material Design
Terminal window
var expanded by remember { mutableStateOf(false) }
Box(modifier = Modifier
.fillMaxSize()
.wrapContentSize(Alignment.TopStart)) {
IconButton(onClick = { expanded = true }) {
Icon(Icons.Default.MoreVert, contentDescription = "Localized description")
}
DropdownMenu(
expanded = expanded,
onDismissRequest = { expanded = false }
) {
DropdownMenuItem(onClick = { /* Handle refresh! */ }) {
Text("Refresh")
}
DropdownMenuItem(onClick = { /* Handle settings! */ }) {
Text("Settings")
}
Divider()
DropdownMenuItem(onClick = { /* Handle send feedback! */ }) {
Text("Send Feedback")
}
}
}