UG4L9-3——富文本控件
UG4L9-3——富文本控件
本章代码关键字
1 | GRichTextField //富文本控件类 |
富文本控件
富文本和普通文本控件基本一致,区别是:
- 富文本支持交互(鼠标/触摸)
- 富文本支持超链接和图文混排
- 富文本支持HTML语法
创建富文本
富文本属性相关
富文本属性和文本一模一样,区别就是:
- UBB语法支持超链接和图片(图文混排)
- 支持HTML语法进行文本编辑
HTML语法
-
常用语法
-
图片:
1
2
3<img src='ui://包名/图片名/'>
<img src='ui://包名/图片名' width='20' height='20'/>
<img src='ui://包名/图片名' width='50%' height='50%'/> -
超链接:
1
<a href='xxx'>link text</a>
-
Unity中的使用
使用前不要忘记设置字体!
-
获取富文本
1
GRichTextField gRichTextField = view.GetChild("richTxt1").asRichTextField;
-
动态创建富文本
1
2
3
4
5GRichTextField richTxt2 = new GRichTextField();
richTxt2.SetSize(100, 100);
richTxt2.SetPosition(20, 20, 0);
richTxt2.text = "<a herf='www.baidu.com'>超链接3</a>";
view.AddChild(richTxt2); -
其他API和文本模板和文本一模一样
-
点击相关
1
2
3
4
5
6
7
8
9gRichTextField.onClick.Add(() =>
{
print("点击1");
});
gRichTextField.onClick.Add(Click);
gRichTextField.onClick.Remove(Click);
gRichTextField.onClick.Clear(); -
超链接点击相关
1
2
3
4
5gRichTextField.onClickLink.Add((obj) =>
{
print(obj.data.ToString());
//这个数据不见得要是链接,我们可以自己定义规则 判断内容去执行不同的逻辑
}); -
HTML超链接样式
注意:全局设置应该在创建富文本之前调用,也就是显示文本之前就该设置完毕
-
设置整个项目中所有链接是否带下划线
1
HtmlParseOptions.DefaultLinkUnderline = true;
-
设置超级链接的颜色
1
2
3HtmlParseOptions.DefaultLinkColor = Color.red; //超链接的文字颜色
HtmlParseOptions.DefaultLinkBgColor = Color.green; //超链接的文字背景色
HtmlParseOptions.DefaultLinkHoverBgColor = Color.yellow; //当鼠标指针移到超链接的文字上时背景色 -
单个富文本超链接样式
1
2
3
4
5//单个富文本设置
HtmlParseOptions options = gRichTextField.richTextField.htmlParseOptions;
options.linkUnderline = false;
options.linkColor = Color.green;
options.linkBgColor = Color.red;
-
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!