/**
* 初始化BitmapShader
*/
private void setUpShader()
{
Drawable drawable = getDrawable();
if (drawable == null)
{
Log.e("view", "ok");
return;
}
Bitmap bmp = drawableToBitamp(drawable);
// 将bmp作为着色器,就是在指定区域内绘制bmp
mBitmapShader = new BitmapShader(bmp, TileMode.CLAMP, TileMode.CLAMP);
float scale = 1.0f;
int bSize = Math.min(bmp.getWidth(), bmp.getHeight());
scale = getWidth() * 1.0f / bSize;
// shader的变换矩阵,我们这里主要用于放大或者缩小
matrix.setScale(scale, scale);
// 设置变换矩阵
mBitmapShader.setLocalMatrix(matrix);
// 设置shader
paint.setShader(mBitmapShader);
}
CircleView.java 文件源码
java
阅读 35
收藏 0
点赞 0
评论 0
项目:Evisa
作者:
评论列表
文章目录