Android中canvas.drawText 绘制文本居中
因为最近多开项目,时间主要花在 coding 和 review 上了,抽空写个自定义控件中的小案例,但是虽然知识点很小但是在开发中很常用
首先来看这个方法:
drawText(String text, float x, float y, Paint paint)
首先第一个参数 text 是我们需要绘制的文本,第二、三个参数 x,y 是关键所在,其含义为:x默认是这个字符串的左边在屏幕的位置,y是指定这个字符baseline在屏幕上的位置。最后第四个参数 paint 是我们的画笔,用于定义字体、大小、颜色等属性。
这图用iPad随手画的,可以很清楚地看出x和y参数的意义。
那么怎么做才能获取正确的居中位置呢,这里需要一些运算,直接上代码:
@Override
protected void onDraw(Canvas canvas) {
String testString =