Android图片等比例缩放和填充屏幕效果

时间:2019-04-07
本文章向大家介绍Android图片等比例缩放和填充屏幕效果,主要包括Android图片等比例缩放和填充屏幕效果使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例为大家分享了Android图片等比例缩放和填充屏幕的具体代码,供大家参考,具体内容如下

第一种方法:在ImageView的t同事设置两个属性

 android:adjustViewBounds="true"
 android:scaleType="fitXY

第二中方法:用IamgeView的 android:scaleType  设置属性的时候  填充屏幕出现的各种问题

 /**
  * 将图片等比例缩放 setAdjustViewBounds setMaxWidth setMaxWidth必须同时设置才有效
  * 
  * @param context
  * @param view
  *   父容器
  * @param image
  *   图片控件
  * @param source
  *   图片资源
  */
 public static void setImageViewMathParent(Activity context, LinearLayout view,
   ImageView image, int source) {
  Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(),
    source);
  DisplayMetrics displayMetrics = new DisplayMetrics();
  context.getWindowManager().getDefaultDisplay()
    .getMetrics(displayMetrics);
  float scalew = (float) displayMetrics.widthPixels
    / (float) bitmap.getWidth();
  image.setScaleType(ScaleType.MATRIX);
  Matrix matrix = new Matrix();
  image.setAdjustViewBounds(true);
  if (displayMetrics.widthPixels < bitmap.getWidth()) {
   matrix.postScale(scalew, scalew);
  } else {
   matrix.postScale(1 / scalew, 1 / scalew);
  }
  image.setMaxWidth(displayMetrics.widthPixels);
  float ss = displayMetrics.heightPixels > bitmap.getHeight() ? displayMetrics.heightPixels
    : bitmap.getHeight();
  image.setMaxWidth((int) ss);
  view.addView(image);
  if (bitmap != null && bitmap.isRecycled()) {
   bitmap.recycle();
  }

 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。