画不多说先来个效果图
红色圆形就是一个自定义的view 中间的文字也是上下居中的效果
//获取paint中的字体信息 settextSize要在他前面
FontMetrics fontMetrics = paint.getFontMetrics(); // 计算文字高度 float fontHeight = fontMetrics.bottom - fontMetrics.top; // 计算文字高度baseline float textBaseY = getHeight() - (getHeight() - fontHeight) / 2 - fontMetrics.bottom;
String string = "开始秒赞";
//获取字体的长度
float fontWidth = paint.measureText(string);
//计算文字长度的baseline
float textBaseX = (width - fontWidth) / 2; canvas.drawText(string, textBaseX, textBaseY, paint);
妥了!
原文地址:http://blog.csdn.net/u013134391/article/details/40892703