Ayrıntılar ekranı oluşturun

Birçok TV uygulamasında, belirli bir içerik (ör. belirli bir film) için alakalı meta veriler içeren içerik ayrıntıları sayfaları bulunur. Ayrıntılar sayfaları, seçilen içeriğin meta verilerini bağımsız değişken olarak alan bir composable işlev olarak uygulanabilir.

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

@Composable
fun DetailsScreen(
    movie: Movie,
    modifier: Modifier = Modifier,
    onStartPlayback: (Movie) -> Unit = {}
) {
    Box(modifier = modifier.fillMaxSize()) {
        AsyncImage(
            modifier = Modifier.fillMaxSize(),
            model = movie.backgroundImageUrl,
            contentDescription = null,
            contentScale = ContentScale.Crop,
        )
        Column(modifier = Modifier.padding(32.dp)) {
            Text(
                text = movie.title,
                style = MaterialTheme.typography.headlineMedium
            )
            Text(text = movie.description)
            Button(onClick = { onStartPlayback(movie) }) {
                Text(text = stringResource(id = R.string.startPlayback))
            }
        }
    }
}