我正在尝试通过代码获取 ImageView 我的 XML 中是这样声明的:
<ImageView
android:id="@+id/exo_image"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@color/cardview_light_background"/>
我用代码这样设置它:
val bmp = BitmapFactory.decodeFile(mediaItem!!.mediaMetadata.artworkUri!!.path)
view.setImageBitmap(null)
if (bmp != null) {
view.setImageBitmap(bmp)
Log.d("TEMPS", bmp.toString())
}
我的 URL 指向保存在我的应用程序数据中的本地文件,要求执行以下操作:
/data/user/0/com.example.euphonia/files/music.zirk.eu/icon/Howling.jpg
我的日志返回以下值:
android.graphics.Bitmap@f241913
我也尝试过直接从URL设置但没有成功
为了检查我的文件是否不正确,我还尝试按以下方式设置位图:
val help = Bitmap.createBitmap(100, 100, Config.ARGB_8888)
for (i in 0..99) {
for (y in 0..99) {
help.setPixel(i, y, Color.rgb(45, 127, 0))
}
}
view.setImageBitmap(help)
但即使这样我的文件仍然没有显示 我还尝试通过调用 invalidate 来使视图无效,但这并没有改变任何东西
如何在 ImageView 中显示图像?
确保您将图像设置为正确的 ID。在你的情况下,“exo_image”。您正在使用
view.setImageBitmap(bmp)
。确保“view”指的是“exo_image”