重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文实例为大家分享了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(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。