0

textField 的当前行为是将所有文本呈现为 HTML。有没有办法告诉系统这是纯文本,即使它看起来像 html?

在 AS2 中有一个.html属性,我可以将其设置为 false 以获得这种行为,它似乎已经消失了。

我很清楚我可以对输入进行 html 转义以获得所需的行为,但我正在寻找最干净/最简单的解决方案。(而且似乎我必须编写自己的 html-escape 函数......)

4

1 回答 1

4

AS3 文本字段有两个属性,texthtmlText. 该text属性可用于显示纯文本,即使它看起来像 html。这两个属性由 Flash 自动链接,因此编辑text将更新htmlText,反之亦然。

您应该能够使用该text属性来实现您的目标。不幸的是,如果您在文本字段中使用样式表,则这两个属性都将被视为 HTML。在这种情况下,您有两个选择。您可以使用简单的 TextFormat 对象在没有样式表的情况下执行样式设置,如果您的样式表不太复杂,这可能很简单。如果您确实需要使用样式表,您可以利用 AS3 的两个文本属性之间的链接来自动转义您的文本。

例如,如果你想更新一个名为tf,它使用样式表的文本字段,但你想要纯文本,你可以这样做:

var temp:TextField = new TextField();
temp.text = plainText;
tf.text = temp.htmlText;

临时文本字段将自动生成转义 HTML,然后您可以在实际文本字段中使用它。

于 2012-12-27T19:20:22.067 回答