android - 如何使用 Coil 从 URL 获取位图?

标签 android kotlin palette image-load coil

我想从 URL 加载位图,然后使用调色板 API 从中获取一些颜色。

在文档页面上,我找不到直接获取位图的代码!

谁能帮我吗?

最佳答案

您可以使用 target方法并将drawable转换为bitmap作为

    val loader = ImageLoader(this)
    val req = ImageRequest.Builder(this)
        .data("https://images.dog.ceo/breeds/saluki/n02091831_3400.jpg") // demo link
        .target { result ->
            val bitmap = (result as BitmapDrawable).bitmap
        }
        .build()

    val disposable = loader.enqueue(req)
如果您使用协程,请使用 GetRequest (在您的 CoroutineScope 中使用重载的 execute 方法和 suspend )为:
  coroutineScope.launch{
    val loader = ImageLoader(this)
    val request = ImageRequest.Builder(this)
        .data("https://images.dog.ceo/breeds/saluki/n02091831_3400.jpg")
        .allowHardware(false) // Disable hardware bitmaps.
        .build()

    val result = (loader.execute(request) as SuccessResult).drawable
    val bitmap = (result as BitmapDrawable).bitmap
}

关于android - 如何使用 Coil 从 URL 获取位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61892301/

相关文章:

Android 从 WCF 获取返回值

android - 编译器在尝试获取对可组合函数的引用时抛出警告

kotlin var 在 getter 上具有不同的返回类型

android - 如何在kotlin android中使用viewmodel和数据绑定(bind)基于所有editetext启用/禁用按钮不为空

menu - 在 Linux 上获取 Mathematica 菜单栏

actionscript-3 - 如何从 bitmapData 对象(或字节数组)中过滤特定颜色

java - 可以 :select submit palette values in Tapestry 5. 3.6 吗?

android - 图像未使用 Html.fromhtml 在 TextView 中显示

android - 如何在 adb shell 中跟踪路由?

android - Kotlin 数据类中的函数作为参数导致分割错误