【问题标题】:how to get setScaleType(ImageView.ScaleType.FIT_CENTER) effect using setScaleType(ImageView.ScaleType.MATRIX)如何使用 setScaleType(ImageView.ScaleType.MATRIX) 获得 setScaleType(ImageView.ScaleType.FIT_CENTER) 效果
【发布时间】:2012-03-19 06:45:52
【问题描述】:
在使用 ImageView 和 Matrix 的 Android 中,我想缩放图像以适合显示区域。
然后使用捏合,用户可以缩放图像。
使用setScaleType(ImageView.ScaleType.FIT_CENTER) 我可以将我的图像放入显示区域。但是当我使用setScaleType(ImageView.ScaleType.MATRIX) 开始缩放图像时,图像会重置为默认大小。
所以我的问题是如何找到一个与
setScaleType(ImageView.ScaleType.FIT_CENTER).
【问题讨论】:
标签:
android
matrix
imageview
【解决方案1】:
您需要将mMatrix.setRectToRect 和Matrix.ScaleToFit.CENTER 与您的图像坐标和视图坐标一起用作源矩形和目标矩形。
mMatrix.setRectToRect(new RectF(0,0,mImageView.getMeasuredWidth(),mImageView.getMeasuredHeight()),new RectF(0,0,mImageView.getParent().getMeasuredWidth(),mImageView.getParent().getMeasuredHeight()),Matrix.ScaleToFit.CENTER);