前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自定View练习第二节

自定View练习第二节

作者头像
项勇
发布2019-12-13 12:58:38
2450
发布2019-12-13 12:58:38
举报
文章被收录于专栏:项勇项勇

1.渐变色

代码语言:javascript
复制
Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        mPaint.setColor(Color.GREEN);//颜色
        mPaint.setStyle(Paint.Style.STROKE);//类型
        mPaint.setStrokeWidth(25);//线条宽度
        canvas.drawCircle(200,200,100,mPaint);
        Shader shader1 = new LinearGradient(100,100,200,200,Color.BLUE,Color.GREEN,Shader.TileMode.REPEAT);
        mPaint.setShader(shader1);
        canvas.drawCircle(350,200,100,mPaint);
        Shader shader2 = new LinearGradient(100,100,200,200,Color.BLUE,Color.GREEN,Shader.TileMode.MIRROR);
        mPaint.setShader(shader2);
        canvas.drawCircle(500,200,100,mPaint);
        Shader shader3 = new LinearGradient(500,100,650,300,Color.RED,Color.GREEN,Shader.TileMode.CLAMP);
        mPaint.setShader(shader3);
        canvas.drawCircle(650,200,100,mPaint);
        Shader shader4 = new RadialGradient(200,500,100,Color.RED,Color.GREEN,Shader.TileMode.MIRROR);
        mPaint.setShader(shader4);
        mPaint.setStyle(Paint.Style.FILL);//类型
        canvas.drawCircle(200,500,100,mPaint);
    }

2.截图

代码语言:javascript
复制
    Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        mPaint.setStyle(Paint.Style.FILL);//类型
        Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.bbdalao);
        Shader shader = new BitmapShader(bitmap,Shader.TileMode.MIRROR,Shader.TileMode.MIRROR);
        mPaint.setShader(shader);
        canvas.drawCircle(200,500,350,mPaint);
        canvas.drawCircle(850,500,350,mPaint);
    }

3.模糊

代码语言:javascript
复制
    Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        mPaint.setColor(Color.RED);
        setLayerType(View.LAYER_TYPE_SOFTWARE, mPaint);//关闭硬件加速
        Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.bbdalao2);
        mPaint.setMaskFilter(new BlurMaskFilter(250, BlurMaskFilter.Blur.NORMAL));
        canvas.drawBitmap(bitmap,50,50,mPaint);

        mPaint.setMaskFilter(new BlurMaskFilter(250, BlurMaskFilter.Blur.INNER));
        canvas.drawBitmap(bitmap,50,850,mPaint);
    }
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-11-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 项勇 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.渐变色
  • 2.截图
  • 3.模糊
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档