阅读量:1
要在Android中使用drawText方法居中绘制文本,可以通过以下步骤实现:
- 获取文本的宽度和高度 可以使用Paint类的measureText方法获取文本的宽度,使用Paint类的getTextBounds方法获取文本的高度。
String text = "Hello, World!"; Paint paint = new Paint(); paint.setTextSize(50); float textWidth = paint.measureText(text); Rect bounds = new Rect(); paint.getTextBounds(text, 0, text.length(), bounds); float textHeight = bounds.height();
- 计算文本的起始坐标 首先计算文本居中绘制的起始横坐标,即屏幕宽度的一半减去文本宽度的一半;然后计算文本居中绘制的起始纵坐标,即屏幕高度的一半加上文本高度的一半。
int x = (canvas.getWidth() - textWidth) / 2; int y = (canvas.getHeight() + textHeight) / 2;
- 绘制文本 最后使用Canvas的drawText方法绘制文本,传入计算得到的起始坐标即可。
canvas.drawText(text, x, y, paint);
这样就可以在Android中居中绘制文本了。