vinc3m1/RoundedImageView

在ScaleType=ScaleType.FIT_XY 显示.9.png不正常

123ufo opened this issue · 3 comments

当RoundedImageView设置ScaleType=ScaleType.FIT_XY时,显示不出.9.png的效果。用ImageView是正常的。

当RoundedImageView设置ScaleType=ScaleType.FIT_XY时,显示不出.9.png的效果。用ImageView是正常的。

@123ufo 请教下,过后你是怎么解决的呢?

当RoundedImageView设置ScaleType=ScaleType.FIT_XY时,显示不出.9.png的效果。用ImageView是正常的。

@123ufo 请教下,过后你是怎么解决的呢?
后台我研了一下他的源在RoundedDrawable里通过判断图片的类型来做一些修改,效果好了很多.
--------------code------------------------
case FIT_XY:
mBorderRect.set(mBounds);
mBorderRect.inset(mBorderWidth / 2, mBorderWidth / 2);
mShaderMatrix.reset();
//todo
mShaderMatrix.setRectToRect(mBitmapRect, mBorderRect, mNinePatch
? Matrix.ScaleToFit.CENTER : Matrix.ScaleToFit.FILL);
LogUtils.d(TAG, "updateShaderMatrix:--> isNinePatch: " + mNinePatch);
break;

当RoundedImageView设置ScaleType=ScaleType.FIT_XY时,显示不出.9.png的效果。用ImageView是正常的。

@123ufo 请教下,过后你是怎么解决的呢?
后台我研了一下他的源在RoundedDrawable里通过判断图片的类型来做一些修改,效果好了很多.
--------------code------------------------
case FIT_XY:
mBorderRect.set(mBounds);
mBorderRect.inset(mBorderWidth / 2, mBorderWidth / 2);
mShaderMatrix.reset();
//todo
mShaderMatrix.setRectToRect(mBitmapRect, mBorderRect, mNinePatch
? Matrix.ScaleToFit.CENTER : Matrix.ScaleToFit.FILL);
LogUtils.d(TAG, "updateShaderMatrix:--> isNinePatch: " + mNinePatch);
break;

好的,谢谢,我也按类似的方向来考虑下