【问题标题】:How to position StaticLayout in android?如何在android中定位StaticLayout?
【发布时间】:2011-02-23 18:13:39
【问题描述】:

我想在 google maps api 上创建一个环绕文本。我已经能够使用大量代码来做到这一点,但一直在寻找更好的方法。我最近的尝试是使用 StaticLayout 类并且文本是换行的,但我不知道如何定位它...无论我尝试什么,它总是从屏幕的左上角开始...。

【问题讨论】:

    标签: android drawtext


    【解决方案1】:

    在布局上调用 draw(c) 之前尝试执行 canvas.translate(x,y)

    【讨论】:

      【解决方案2】:

      你可以这样做

      //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(),您应该可以继续在画布上绘制。

      【讨论】:

      • canvas.save() 需要在调用 canvas.restore() 之前调用。它似乎像 push() / pop()
      猜你喜欢
      • 2017-06-06
      • 2011-08-28
      • 2018-07-13
      • 1970-01-01
      • 1970-01-01
      • 2022-11-02
      • 2019-07-26
      • 2014-05-17
      • 1970-01-01
      相关资源
      最近更新 更多