简介
有些时候,文字过长,或者有多条需要展示的文本时,我们需要将文本进行左右滚动,多条文本时,还得上下滚动以实现展示不同的文本内容。这时候就需要我们自定义view来实现文本跑马灯效果了。
效果图
Android文本参数 - FontMetrics
当我们要自己绘制文本的时候,怎么去计算文字的宽高,有些时候将本文的绘制起点设置为文本控件的中心点,却发现绘制的文本并不是居中的,下面讲解Android中文本是怎么样确定文本的绘制起点的。
-
基准点是baseline
-
Ascent是baseline之上至字符最高处的距离
-
Descent是baseline之下至字符最低处的距离
-
Leading文档说的很含糊,其实是上一行字符的descent到下一行的ascent之间的距离
-
Top指的是指的是最高字符到baseline的值,即ascent的最大值
-
bottom指的是最下字符到baseline的值,即descent的最大值
详情图
简化版图
在Android中,文字的绘制都是从Baseline处开始的,Baseline往上至字符最高处的距离我们称之为ascent(上坡度),Baseline往下至字符最底处的距离我们称之为descent(下坡度),而leading(行间距)则表示上一