如何使StaticLayout文本显示在画布上?

时间:2012-09-04 21:50:15

标签: java android layout text static

我正在为Android 2.3.3创建动态壁纸,我想创建一个带文本的背景。

听起来很简单,但我不知道如何让文字显得正确。它位于屏幕顶部的某个位置,因为当我设置较高的文本大小时,其中一些会显示在屏幕顶部。这是我的代码:

void drawWall(Canvas c)
{
c.save();

c.drawColor(0xff000000);

Bitmap _stein = BitmapFactory.decodeResource(getResources(), R.drawable.stein);

c.drawBitmap(_stein, 0, 0, null);


TextPaint tp = new TextPaint();
tp.setColor(Color.WHITE);
tp.setStyle(Style.FILL);
tp.setTextSize(20);


String message = "Some string here";

StaticLayout myStaticLayout = new StaticLayout(message, tp, c.getWidth(), Layout.Alignment.ALIGN_NORMAL, 1.0f, 0.0f, false);
c.translate(4*mDensity, 4*mDensity); //same thing with or without this

myStaticLayout.draw(c);

c.restore();
}

如果您需要更多信息,请告诉我。

0 个答案:

没有答案