【发布时间】:2011-02-23 18:13:39
【问题描述】:
我想在 google maps api 上创建一个环绕文本。我已经能够使用大量代码来做到这一点,但一直在寻找更好的方法。我最近的尝试是使用 StaticLayout 类并且文本是换行的,但我不知道如何定位它...无论我尝试什么,它总是从屏幕的左上角开始...。
【问题讨论】:
我想在 google maps api 上创建一个环绕文本。我已经能够使用大量代码来做到这一点,但一直在寻找更好的方法。我最近的尝试是使用 StaticLayout 类并且文本是换行的,但我不知道如何定位它...无论我尝试什么,它总是从屏幕的左上角开始...。
【问题讨论】:
在布局上调用 draw(c) 之前尝试执行 canvas.translate(x,y)。
【讨论】:
你可以这样做
//Save canvas before translating it, otherwise restore will cause crash (Underflow in restore - more restores than saves)
canvas.save()
canvas.translate(xPos, yPos);
statictextlayout.draw(canvas);
//After that to reset the canvas back for everything else
canvas.restore();
之后要继续正常绘制...在静态布局绘制后调用 canvas.restore(),您应该可以继续在画布上绘制。
【讨论】: