Tạo màn hình chi tiết

Nhiều ứng dụng truyền hình đưa vào trang chi tiết nội dung với siêu dữ liệu liên quan cho ứng dụng cụ thể đoạn nội dung (tức là một bộ phim cụ thể). Trang chi tiết có thể được triển khai dưới dạng hàm có khả năng kết hợp, lấy siêu dữ liệu của nội dung đã chọn làm đối số.

Mã sau đây là cách triển khai điển hình của màn hình chi tiết. Nó tải hình ảnh của bộ phim đã cho cùng với tiêu đề và thông tin mô tả. Người dùng có thể tạo hiệu ứng chuyển đổi màn hình sang màn hình trình phát. Bạn có thể kích hoạt tính năng này bằng cách nhấp vào để bắt đầu phát lại phim. Bạn có thể xử lý thao tác này để màn hình bằng cách thiết lập hàm callback.

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