בניית מסך פרטים

אפליקציות טלוויזיה רבות כוללות דפי פרטים של תוכן עם מטא-נתונים רלוונטיים לתוכן נתון (למשל, סרט ספציפי). אפשר להטמיע דפי פרטים כפונקציה שניתנת ליצירה, שמקבלת את המטא-נתונים של התוכן שנבחר כארגומנט שלה.

הקוד הבא הוא הטמעה אופיינית של מסך הפרטים. הוא טוען תמונה של הסרט עם השם והתיאור שלו. המשתמש יכול לבצע מעבר מסך למסך הנגן, וניתן להפעיל אותו בלחיצה על לחצן כדי להתחיל את הפעלת הסרט. כדי לבצע את המעבר בין המסכים, אפשר להגדיר פונקציית קריאה חוזרת.

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