一个简单的需求,将图片的宽度固定扩到到屏幕宽度,高度等比例放大。
利用
android:adjustViewBounds="true"
配合MaxWidth和MaxHeight
(adjustViewBounds表示宽高比例固定,要配合MaxWidth和MaxHeight才有效果)
<--表示图片宽度屏幕自适应,高度根据宽度放缩比例进行放缩-->
<ImageView
android:id="@+id/sdv_article"
android:adjustViewBounds="true"
android:layout_gravity="center_horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
//获取屏幕宽度,设置maxWith
ViewGroup.LayoutParams lp = mImageview.getLayoutParams();
DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm);
lp.width = dm.widthPixels;
lp.height = ViewGroup.LayoutParams.WRAP_CONTENT;
mImageView.setLayoutParams(lp);
mImageView.setMaxWidth(dm.widthPixels);
//设置maxHeight为宽度的五倍(这里随便设,稍微大些就可以了)
mImageView.setMaxHeight((int) (dm.widthPixels * 5));
//这里我用的UIL进行的图片加载 ImageLoaderUtils.LoadImage(articleDetail.img_url,sdv_article);
这样就能实现宽度自适应,高度等比例缩放了