许多电视应用都包含内容详情页面,其中包含给定内容(例如特定电影)的相关元数据。详情页面可以作为可组合函数实现,并将所选内容的元数据作为参数。
以下代码是详情页面的典型实现。它会加载指定电影的图片,并附带其标题和说明。用户可以将页面转换到播放器页面,只需点击一个按钮即可触发此转换,以便开始电影播放。您可以通过设置回调函数来处理此操作,以实现屏幕转换。
@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)
}
}
}
}