最近在修改 WheelView 自定义控件,因为原始效果单行效果,现在需要支持换行效果,故接触到了 StaticLayout ,先行记录
在 Android自定义控件
中,当我们调用 drawText
绘制 Text 时,假设 Text 为超长字符串(文本宽度超过屏幕宽度)也只会显示一行,超出部分会隐藏在屏幕之外…
而 Google
为了适配多行 Text 显示效果,早已提供了 StaticLayout
工具类用于处理文字换行的问题,现在开始一起来看我写个Demo吧!
效果(Demo下载地址)
基础认知
很多人可能会想到TextView为何支持换行?嗯… 有没有可能TextView内部也使用了
StaticLayout
?
在自定义控件中关于单行显示的 drawText
场景很常见,以下是一些构造方法