当前位置: 代码迷 >> Android >> android图片等比例缩放 填充荧幕
  详细解决方案

android图片等比例缩放 填充荧幕

热度:91   发布时间:2016-04-28 05:11:03.0
android图片等比例缩放 填充屏幕

用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();		}	}

  相关解决方案