我正在使用actionsript 3和flex 3.5。有没有办法在不使用“ htmlText”属性的情况下更改TextArea控件中部分文本的字体颜色?

例如,我有一个字符串“狗,猫,鱼”。我想将“猫”字的颜色更改为红色。有可能吗?

最佳答案

如果您已经可以找到字符,那么只需TextFormatTextField类即可实现。 TextFormat类允许您定义字段的样式。

var format:TextFormat = new TextFormat();
format.font = "Helvectica";
format.size = 14;
format.color = 0xFFCC00;
format.leading = 2;


然后,您可以使用...在TextField中的文本子集上设置该格式。

var field:TextField = new TextField();
field.text = "fish cat dog rat"
field.setTextFormat( format, 6, 12 )


...其中6是开始格式化的索引,12是结束格式化的索引。

如果您无法确定格式的起点和终点,建议您使用正则表达式。

10-08 07:04