Paint是TextPaint的父类,TextPaint从名字来看是用来处理文字的。
在TextView及其子类中可以通过getPaint()获得TextPaint对象。
在TextView中一般有两种颜色,一个是背景颜色,一个是字体颜色,Paint控制背景颜色,TextPaint控制字体颜色。
一般来说绘制图像是设置Paint属性然后在Canvas上操作并显示出来,但是通过getPaint()获得TextPaint对象后可以直接进行操作无需通过Canvas即可显示效果。
例如以下代码:
1、TextView tv = (TextView)findViewById(R.id.tv);
tv.getPaint().setFakeBoldText(true);//设置粗体效果
2、
int mViewWidth = getMeasuredWidth();
Paint mPaint = getPaint();
LinearGradient linearGradient = new LinearGradient(0, 0, mViewWidth, 0, new int[]{Color.BLUE,0xffffffff,Color.BLUE} ,null, Shader.TileMode.CLAMP);
mPaint.setShader(linearGradient);