Android试图找出如何居中文本

时间:2014-01-04 01:23:31

标签: android

我有以下代码在屏幕顶部显示消息。我无法弄清楚如何集中它。

目前我的代码如下:

int scale = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 
                (float) 123.4, getResources().getDisplayMetrics());
int size = (int) (64 * scale + 0.5f);
size=scale*10;
paint.setTextSize( 30);
paint.setColor(Color.WHITE);
String say="Select Catagory";
canvas.drawText(say, cGlobals.TranslateX(300),cGlobals.TranslateY(100), paint);

2 个答案:

答案 0 :(得分:0)

尝试设置绘画对齐:

paint.setTextAlign(Align.CENTER);

请注意,文字将相对于您在Canvas.drawText()中指定的x,y原点居中。因此,您必须首先计算视图的中心点

答案 1 :(得分:0)

您可以将文本对齐在textview的中心,如下所示:

paint.setTextAlign(Align.CENTER);

或将textview本身放在较大版面的中心

paint.setGravity(Gravity.CENTER_HORIZONTAL);