我正在处理一个自定义View
,其中包含我想锚定到画布底部的经常更新的文本。
文本长度也会发生变化,我希望它可以换行,在需要更多行时向上移动屏幕。(DynamicLayout
因此似乎是自动化这个的可靠选择)
但是,我在文档中没有看到任何关于指定在画布上绘制文本的位置或应该“增长”的方向的选项。
这是我的初始化:
TextPaint subtleTextPaint = new TextPaint();
DynamicLayout dl = new DynamicLayout(text,subtleTextPaint,getWidth()
,Layout.Alignment.ALIGN_CENTER,1,0,true);
在 中onDraw()
,我只是将画布传递给DynamicLayout
对象,如下所示:
dl.draw(c);
现在,文本绘制在屏幕的最顶部,随着文本变长,文字会向下换行。