前言

【Andorid X 项目笔记】

 

声明

  欢迎转载,但请保留文章原始出处:) 
    博客园:http://www.cnblogs.com

    农民伯伯: http://over140.cnblogs.com   

 

系列

1、【Andorid X 项目笔记】禁用ListView的Fling功能(1)

2、【Andorid X 项目笔记】动态设置ViewPager的Adapter问题(2) 

 

正文

一、效果图

【Andorid X 项目笔记】TextView字幕效果(3)

 

二、代码

 

public class TextSubView extends TextView {

    private TextPaint mPaint;

    public TextSubView(Context context, AttributeSet attrs) {
        super(context, attrs);

        mPaint = new TextPaint(getPaint());
        mPaint.setStyle(TextPaint.Style.STROKE);
        mPaint.setShadowLayer(2.0F, 2.0F, 2.0F, Color.RED);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);

        canvas.save();
        canvas.clipRect(0, 0, 55, getBottom());
        canvas.drawText(getText().toString(), 0, getBaseline(), mPaint);
        canvas.restore();
    }
}

 

代码说明:

关键是setShadowLayer设置阴影效果以及onDraw的四行代码,大家可以搜一下"Android clipRect"了解一下这个函数的作用,注意clipRect与drawText的顺序不要弄反了。


 

相关文章:

  • 2021-12-03
  • 2021-11-20
  • 2022-01-23
  • 2021-04-06
  • 2022-12-23
  • 2022-12-23
  • 2021-06-11
  • 2022-12-23
猜你喜欢
  • 2021-07-01
  • 2021-12-17
  • 2021-07-02
  • 2022-01-06
  • 2021-11-08
  • 2022-01-15
相关资源
相似解决方案