建構詳細資料畫面

許多電視應用程式都會提供內容詳細資料頁面,其中包含特定內容 (例如特定電影) 的相關中繼資料。詳細資料頁面可實作為可組合函式,將所選內容的中繼資料做為引數。

以下程式碼是詳細資料畫面的一般實作方式。它會載入指定電影的圖片,並附上標題和說明。使用者可以將畫面轉換至播放器畫面,只要按一下按鈕即可觸發此動作,開始播放電影。您可以設定回呼函式,藉此處理這項動作,以便進行螢幕轉場。

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