要使用Glide 4.13.0加载网络图片,并获取图片的宽高,并将其设置在ImageView上,可以按照以下步骤进行操作:

  1. 在项目级别的build.gradle文件中,添加Glide的依赖:
dependencies {
    implementation 'com.github.bumptech.glide:glide:4.13.0'
    kapt 'com.github.bumptech.glide:compiler:4.13.0'
}
  1. 在Activity或Fragment中,使用以下代码加载网络图片:
val url = "https://example.com/image.jpg"
val imageView = findViewById<ImageView>(R.id.imageView)

Glide.with(this)
    .load(url)
    .listener(object : RequestListener<Drawable> {
        override fun onLoadFailed(e: GlideException?, model: Any?, target: Target<Drawable>?, isFirstResource: Boolean): Boolean {
            return false
        }

        override fun onResourceReady(resource: Drawable?, model: Any?, target: Target<Drawable>?, dataSource: DataSource?, isFirstResource: Boolean): Boolean {
            if (resource != null) {
                val width = resource.intrinsicWidth
                val height = resource.intrinsicHeight
                imageView.layoutParams.width = width
                imageView.layoutParams.height = height
                imageView.setImageDrawable(resource)
            }
            return false
        }
    })
    .into(imageView)

在这个例子中,我们首先指定要加载的图片的URL,并使用.load(url)将其传递给Glide。然后,我们设置一个监听器,该监听器在图片加载完成时被触发。在onResourceReady方法中,我们可以获取到加载的Drawable对象,并通过resource.intrinsicWidthresource.intrinsicHeight获取到图片的宽高。然后,我们可以将宽高设置到ImageView的LayoutParams中,并将Drawable设置到ImageView上。

请注意,以上代码中的R.id.imageView应该替换为你项目中实际的ImageView的id

Android kotlin glide4130加载网络图片 获取图片宽高 并设置着imageView上

原文地址: http://www.cveoy.top/t/topic/iJYL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录