使用 Glide 加载图像到 ImageView

Loading Image into ImageView with Glide

我有一个应用程序可以将 api 中的图像加载到我的 RecyclerView 中的 imageView 中。

这是我的 ImageView :

<ImageView
android:id="@+id/Group_ImageView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="100dp"
android:layout_alignParentTop="true"
android:background="@color/_Opacity"
android:scaleType="centerInside"
android:src="@mipmap/ic_launcher" />

这里是我的适配器中的图像加载部分,带有 glide :

Glide.with(mContext).load(goodGroups.getImageUrl()).asBitmap().dontTransform().listener(new RequestListener<String, Bitmap>() {
        @Override
        public boolean onException(Exception e, String s, Target<Bitmap> target, boolean b) {
            return false;
        }

        @Override
        public boolean onResourceReady(Bitmap bitmap, String s, Target<Bitmap> target, boolean b, boolean b1) {
            bitmap.setDensity(mContext.getResources().getDisplayMetrics().densityDpi);
            return false;
        }
    }).placeholder(R.mipmap.ic_launcher).error(R.drawable.ic_menu_gallery).into(holder.imageView);

下面是我的问题的屏幕截图:

我的问题出在图中红线部分。蓝线显示我的 Imageview。红色部分不应该显示。 我试过将 ScaleType 更改为“FitXY”或“CenterCrop”,但它弄乱了图片尺寸。我希望我的图片不经过任何裁剪,以其原始大小显示,并且在 ImageView 中没有这些类似填充的空间。

我该怎么办?!

尝试按照您必须使用的 centerCropfitCenter 方法进行操作。

Glide.with(context).load(url).centerCrop().placeholder(R.drawable.default_image).into(img);

Glide.with(context).load(url).fitCenter().placeholder(R.drawable.default_image).into(img);

Glide.with(getActivity().getApplicationContext())
                .load(url).fitCenter()
                .override(500, 758)
                .into(mMovieBackgroundImageView);

试试这组图片 url。

 Glide.with(getBaseContext())
.load("Your image url parse this place")
                .thumbnail(0.1f)
                .into(img_glide);

在代码中为您的 ImageView 设置 android:adjustViewBounds="true"