El selector de botones en Jetpack Compose Android | Por Muhammad Danish | Mayo de 2021
Como todos sabemos, el timbre es el componente de sagacidad central de Android. Usamos ordenanza en casi todas las pantallas de la aplicación. Pero a veces podemos personalizar el timbre de Android para satisfacer nuestra aplicación UI / UX. Al crear un hábitat de diseño y configurar el hábitat de diseño en la calificativo Xml del timbre, podemos cambiar fácilmente el fondo del timbre e incluso cambiar el color de fondo del timbre cuando el beneficiario presiona el timbre. Pero como todos sabemos, Jetpack compose es una alternativa a Xml, por lo que necesitamos usar la función Composable para aplicar formas o cambiar los colores de fondo de los ordenanza.
En este toriUna especieLe mostraré cómo cambiar el color de fondo del timbre cuando el beneficiario presiona el color de fondo del timbre usando la función combinable en jetpack compose. Para usar jetpack compose, debe usar el zorro ártico de estudio de Android con un ícono naranja, porque el ícono garzo de estudio de Android que usamos normalmente para desarrollar aplicaciones de Android no es compatible actualmente con la composición de jetpack.
Jetpack compose se apoyo en el habla Kotlin, por lo que supongo que está familiarizado con el habla Kotlin.
Debe preferir Actividad de composición vacía para que Android Studio pueda manejar bibliotecas importantes y algunas funciones importantes, que son necesarias para las aplicaciones de composición de jetpack.
Luego, cuando termine de crear el tesina, podrá ver la clase de actividad con algunas funciones Composable preescritas en su función onCreate. En este caso, BottomNavigationTheme cambiará con el nombre de su tesina y el tema es el sufijo de texto. Surface es un contenedor en el que puede detallar funciones componibles para mostrar el contenido de su aplicación.
setContent
BottomNavigationTheme
// A surface container using the 'background' color from the theme
Surface(color = MaterialTheme.colors.background)
Greeting()
A continuación se muestra la función de saludo escrita previamente por Android Studio, la modifiqué para poder mostrarte cómo cambiar el color de fondo del timbre cuando el beneficiario presiona el timbre. Esta función debe ser anotada por @Composable para que se pueda clamar en el cuerpo de Surface escrito en lo alto.
Necesita usar la diéresis MutableInteractionSource () para fallar la variable para que su aplicación pueda determinar el estado contemporáneo del timbre de diéresis.
Posteriormente de eso, creé una variable isPressed para poder enterarse si el estado del timbre está presionado.
Creé otra variable para que su valencia se pueda establecer en función de isPressed seguro o copiado.
Las columnas actúan como un diseño rectilíneo en Jetpack, por eso lo creé con algunos modificadores. Los modificadores se utilizan para establecer diferentes tipos de atributos en la sagacidad, como su importancia, ufano, relleno, etc., al igual que declaramos atributos en la calificativo Xml de la sagacidad. Internamente de la columna, creé un timbre con algunos modificadores y su texto.
@Composable
fun Greeting() {val interactionSource = remember MutableInteractionSource()
val isPressed by interactionSource.collectIsPressedAsState()
val color = if (isPressed) Color.Blue else Color.Green
Column(modifier = Modifier.fillMaxHeight()
.fillMaxWidth()
.background(Color.White)
.padding(20.dp),
verticalArrangement= Arrangement.Center)
Button(
onClick = ,
interactionSource = interactionSource,
colors= ButtonDefaults.buttonColors(backgroundColor = color),
modifier = Modifier.fillMaxWidth()
.height(50.dp)
)
Text(
"Button",
color=Color.White
)
Si desea enterarse más sobre jetpack compose, visite:
https://developer.android.com/jetpack/compose