【Unity】用Text+Image实现神奇的文字下划线

写需求的时候搜了一些文字加下划线的方法,UGUI的Text,大都需要写一堆代码来封装Text,比较麻烦

考虑过用TextMeshPro,不过TextMeshPro不能公用Text的字体,有点坑

利用Text加Image试了一下,实现效果看着还不错

1. 给Text加一个Image作为自物体

 2. 给Text所在节点添加Conrtent Size Fitter组件,修改水平适配方式为Preferred Size,用于自动适配Text宽度

3. 修改Image节点的锚点,调整高度,颜色与文字颜色一致

 

4. 如果Text的文字会动态修改Color,要注意同时修改自物体Image的颜色

5. 因为是由两个独立的组件实现的下划线,可以自由设置下划线的形状、位置、高度、颜色,比如波浪下划线?双下划线?特殊图形下划线?上划线?中划线?粗的?细的?红的?绿的?比如文字黑色,下划线红色,神奇!

6. 毕竟是个投机取巧的方式,存在一些问题,文字不能换行,文字BestFit自动适配大小时,下划线高度不会变化,所以用起来也会有一些限制···

发布了104 篇原创文章 · 获赞 74 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_39108767/article/details/103462648
今日推荐