调整图片大小适应屏幕的imagview类

来源:互联网 发布:js 除以 取整 编辑:程序博客网 时间:2024/06/07 19:37
package com.test.android.imageview;import android.content.Context;import android.graphics.Bitmap;import android.graphics.drawable.BitmapDrawable;import android.graphics.drawable.Drawable;import android.util.AttributeSet;import android.widget.ImageView;public class MyImageView extends ImageView {public MyImageView(Context context) {this(context, null);}public MyImageView(Context context, AttributeSet attrs) {this(context, attrs, 0);}public MyImageView(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);}@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {final int width = MeasureSpec.getSize(widthMeasureSpec);Drawable d = getDrawable();Bitmap b = ((BitmapDrawable) d).getBitmap();float scale = width / (float) b.getWidth();int height = (int) (scale * b.getHeight());final int exactWidth = MeasureSpec.makeMeasureSpec(width,MeasureSpec.EXACTLY);final int exactHeight = MeasureSpec.makeMeasureSpec(height,MeasureSpec.EXACTLY);super.onMeasure(exactWidth, exactHeight);}}

原创粉丝点击