Créer un écran d'informations

De nombreuses applications TV incluent des pages d'informations sur le contenu avec des métadonnées pertinentes pour un contenu donné (par exemple, un film spécifique). Les pages d'informations peuvent être implémentées en tant que fonction modulable, en utilisant les métadonnées du contenu sélectionné comme argument.

Le code suivant est une implémentation classique de l'écran d'informations. Elle charge une image du film donné avec son titre et sa description. L'utilisateur peut effectuer une transition vers l'écran du lecteur, qui peut être déclenchée en cliquant sur un bouton pour lancer la lecture du film. Vous pouvez gérer cette action pour effectuer la transition de l'écran en définissant une fonction de rappel.

@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)
       }
     }
  }
}