首页 > 解决方案 > 使用 Coil Android Kotlin 加载图像

问题描述

为什么我无法使用 URL 加载图像,已经使用线圈依赖项

implementation "io.coil-kt:coil:0.11.0"

然后像这样在清单中添加互联网权限

<uses-permission android:name="android.permission.INTERNET" />

但是当我做这样的事情时,图像不显示

holder.musicImage.load("https://images.unsplash.com/photo-1494548162494-384bba4ab999?ixlib=rb-1.2.1&w=1000&q=80")

但是,如果我从本地或可绘制的加载它,它加载没有问题

holder.musicImage.load(R.drawable.ic_baseline_account_box_24)

问题是什么?有人可以帮忙吗?我正在为图书馆使用线圈。

标签: androidkotlin

解决方案


你有什么错误吗?

我建议使用毕加索,因为它比这更强大

无论如何我使用这个工作的代码

val imageView:ImageView = findViewById(R.id.image_view)

imageView!!.load("https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/Kotlin-logo.svg/1024px-Kotlin-logo.svg.png")

但是存在一些你应该注意的东西

1- 在app/build.gradle

android {
   ...
   compileOptions {
       sourceCompatibility JavaVersion.VERSION_1_8
       targetCompatibility JavaVersion.VERSION_1_8
   }

   kotlinOptions {
       jvmTarget = JavaVersion.VERSION_1_8.toString()
   }
}

2- 你必须为线圈工作添加com.squareup.okhttp3:okhttp:3.12.11库,因为线圈使用 okhttp 工作

所以这样做

dependencies {

    ...

    implementation 'com.squareup.okhttp3:okhttp:3.12.11'
}

我做了它们并且效果很好


推荐阅读