Muitos apps de TV incluem páginas de detalhes do conteúdo com metadados relevantes para um determinado parte do conteúdo (por exemplo, um filme específico). As páginas de detalhes podem ser implementadas função combinável, usando metadados do conteúdo selecionado como argumento.
O código a seguir é uma implementação típica da tela de detalhes. Ela carrega uma imagem do filme com o título e a descrição. O usuário pode fazer uma de tela para a tela do player, que pode ser acionada clicando em um para iniciar a reprodução do filme. Você pode executar essa ação para tornar a tela definir uma função de retorno de chamada.
@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)
}
}
}
}