Muchas apps para TV incluyen páginas de detalles del contenido con metadatos relevantes para un contenido determinado (es decir, una película específica). Las páginas de detalles se pueden implementar como una función componible, que toma los metadatos del contenido seleccionado como argumento.
El siguiente código es una implementación típica de la pantalla de detalles. Carga una imagen de la película determinada con su título y descripción. El usuario puede hacer una transición de pantalla a la pantalla del reproductor, que se puede activar haciendo clic en un botón para iniciar la reproducción de la película. Para controlar esta acción y hacer la transición de pantalla, configura una función de devolución de llamada.
@Composable
fun DetailsScreen(
movie: Movie,
modifier: Modifier = Modifier,
onStartPlayback: (Movie) -> Unit = {}
) {
Box(modifier = modifier.fillMaxSize()){
AsyncImage(
modifier = Modifier.fillMaxSize()
model = movie.image,
contentDescription = null,
contentScale = ContentScale.Crop,
)
Column(modifier = Modifier.padding(32.dp)){
Text(
text = movie.title,
style = MaterialTheme.typeography.heading2
)
Text(text = movie.description)
Button(onClick = { onStartPlayBack(movie) }){
Text(text = R.string.startPlayback)
}
}
}
}