Ayrıntılar ekranı oluşturun

Birçok TV uygulaması, belirli bir içerik parçası (ör. belirli bir film) ile ilgili meta verileri içeren içerik ayrıntısı sayfaları içerir. Ayrıntı sayfaları, seçilen içeriğin meta verilerini bağımsız değişkeni olarak alan bir composable işlev olarak uygulanabilir.

Aşağıdaki kod, ayrıntılar ekranının tipik bir uygulamasıdır. İlgili filmin bir resmini başlığı ve açıklamasıyla birlikte yükler. Kullanıcı, oynatıcı ekranına bir ekran geçişi yapabilir. Bu geçiş, film oynatmayı başlatmak için bir düğmeyi tıklayarak tetiklenebilir. Bir geri çağırma işlevi ayarlayarak bu işlemi ekran geçişini yapmak için yapabilirsiniz.

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