#android #android-jetpack-compose #coil
Вопрос:
Я создаю простой экран галереи с помощью Jetpack Compose, который отображает все миниатюры видео и изображений на экране
Я успешно отобразил изображение из пути к файлу. Однако у меня возникли проблемы с отображением миниатюр видео. Как я могу это сделать с помощью катушки?
Вот мой код для отображения миниатюр изображений:
@Composable
fun ImageLoaderFromLocal(
url: String,
placeHolderResId: Int,
modifier: Modifier,
transformation: Transformation
) {
val painter = rememberImagePainter(data = File(url),
builder = {
placeholder(placeHolderResId)
crossfade(true)
transformations(transformation)
})
Image(
painter = painter,
contentDescription = null,
modifier = modifier,
contentScale = ContentScale.Inside
)
}
Ответ №1:
Согласно документации катушки, вам необходимо добавить следующую зависимость:
implementation("io.coil-kt:coil-video:$coil_version")
и укажите fetcher в конструкторе:
val context = LocalContext.current
val painter = rememberImagePainter(
data = url,
builder = {
fetcher(VideoFrameUriFetcher(context))
// optionally set frame location
videoFrameMillis(1000)
placeholder(placeHolderResId)
crossfade(true)
transformations(transformation)
}
)
Комментарии:
1. Спасибо @Филипп Духов, вы сэкономили мне время.