使用Glide将图像加载到ImageView中

时间:2017-07-13 07:21:11

标签: android imageview android-glide

我有一个应用程序,可以将api中的图像加载到我的RecycViewView中的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.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);

以下是我的问题的屏幕截图: issue screen shot

我的问题是图片中红线所示的部分。蓝线显示我的imageview。应该显示红色部分。 我尝试将ScaleType更改为&#34; FitXY&#34;或者&#34; CenterCrop&#34;但它与图片大小相混淆。我希望我的图片没有任何裁剪,显示它的原始大小,并且在ImageView中没有像空格一样的填充。

我该怎么办?!

3 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:1)

尝试此设置图片网址。

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

答案 2 :(得分:0)

尝试关注您必须使用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);