自定义view-文字居中显示

作者: XJ_crazy | 来源:发表于2018-09-05 18:41 被阅读5次

    自定义view的时候总是发现文字居中有一些问题,
    绘制时候文字绘制高度:y = height/2-textHeight/2,始终无法让文字居中,这里给出解决办法。

    image.png
    如上图,android在绘制文字的时候,会基于baseline来进行绘制
    在我的上一篇博文高德地图-Android自定义气泡中,
    字体设置为30,打印出
    top = -32
    ascent = -28
    leading = baseline = 0
    descent = 7
    bottom = 9
    根据这五个属性,在将高度移动到 控件高度/2之后,再往上提高文字高度的一半
    这里我使用的是ascent和descent的一半
    即:y = height/2 - (descent - ascent)/2
    这样就将文字居中了,当然也可以根据bottom和top来平移,因为数值很小,因此看上去也是完全居中的,各人可以自己发挥

    相关文章

      网友评论

        本文标题:自定义view-文字居中显示

        本文链接:https://www.haomeiwen.com/subject/xqkzwftx.html