@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas); Paint mTextPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
// Measure a text
Rect textBounds = new Rect();
mTextPaint.getTextBounds(String.valueOf(mLetter), 0, 1, textBounds);
float textWidth = mTextPaint.measureText(String.valueOf(mLetter));
float textHeight = textBounds.height(); FontMetrics fontMetrics = mTextPaint.getFontMetrics();
// 计算文字高度
float fontHeight = fontMetrics.bottom - fontMetrics.top;
// 计算文字baseline
float textBaseY = getHeight() - (getHeight() - fontHeight) / 2
- fontMetrics.bottom; // Draw the text
canvas.drawText(String.valueOf(mLetter), getWidth() / 2f
- textWidth / 2f, textBaseY, mTextPaint);
}