Unity 使用 UILabel 实现不同格式的文本显示

UILbale 控件中有一个BBCode的选项,勾选后就可以使用BBCode格式。

[b]Bold[/b]                      粗体
[i]italic[/i]                         斜体
[u]underline[/u]               下划线
[s]strikethrough[/s]         删除线
[sub]sub[/sub]               下标
[sup]sup[/sup]               上标
[00ff00]设置颜色[-]           设置显示颜色

[url=http://www.cnblogs.com/mrzivchu/][u]博客[/u][/url] 链接

具体的使用示例就不在这里展示了,很简单的使用方式。
不过要注意的一点是,但是用颜色设置的时候,并不是你设置什么颜色就会显示什么颜色。


UILabel 中有一个Color Tint选项设置,文本的最终颜色是要两个进行*运算得到的。
(这个地方我大致看了一下源码, 应该是两个颜色值相乘的结果,但是不太确定,也不知道相乘的结果是不是有点类似&运算,希望知道的朋友可以告知我一下,谢谢!)
比如 我的文本是这样写的: [ff0000]测试[-]


而Color Tint 的颜色值是 ffffff
那么最终的显示颜色是 ff0000 * ffffff = ff0000,最终显示红色。

然而如果Color Tint的颜色值是黑色:000000,
那么恭喜你,不管在文本中怎样设置颜色值,最终都会显示黑色。
如果想要忽略Color Tint的值,可以使用[c], 例如
[c][ff0000]测试[-][/c]


大家在使用的时候注意一下就可以了。

你可能感兴趣的:(Unity)