首先我们需要吧图片的控件修改为全屏尺寸

<ImageView
android:id="@+id/iv_thumb1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:src="@drawable/ic_tiktok_shu"
android:visibility="visible" />


然后就是代码设置宽高

Glide.with(activity).load(StrUrl).asBitmap().into(new SimpleTarget<Bitmap>(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL) {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
int imageWidth = resource.getWidth();
int imageHeight = resource.getHeight();
int height = ScreenUtils.getScreenWidth() * imageHeight / imageWidth;
ViewGroup.LayoutParams para = imageView.getLayoutParams();
para.height = height;
para.width = ScreenUtils.getScreenWidth();//屏幕的宽度,没有工具类自己从网上搜
imageView.setImageBitmap(resource);
}
});


这里说下如果需要可以设置图片裁剪的方式

.centerCrop()//设置图片加载居中裁剪


原理:​先用Glide按图片原始大小加载一次图片,再获取加载的图片宽度和高度及屏幕宽度,计算缩放后的高度再赋值给对应的imageview,最后再把加载得到的图片设置到赋值后的imageview中以完成等比例缩放


leileitua