0

我正在测试一些东西以准备一些本地化更改。现在我正在尝试在运行时更改一些默认文本格式,并遇到了一个问题:当我单击 textInput 或 textArea 时,文本格式会恢复。

所以我开始像这样更改 textField 的 textFormat 和 defaultTextFormat:

import flash.text.TextFormat;

var textFormat:TextFormat;

textFormat = new TextFormat();

textFormat.font = "Palatino Linotype";
textFormat.size = 12;
textFormat.color = "0xFFFFFF";

function setFormatting():void
{
    characterNotes.textInput.textField.setTextFormat(textFormat);
    characterNotes.textInput.textField.defaultTextFormat = textFormat;
}

setFormatting();
characterNotes.textInput.text = "Test test test";

如果我不点击任何东西,那么格式是正确的(即,Palatino,12 点,白色)。但是,如果我单击 characterNotes 影片剪辑中的 textField,它会恢复到原来的默认文本格式(在 Adob​​e Animate 的编辑器的组件属性窗口中设置)。如果我在 textField 中单击进出几次,它将保持预期的文本格式(在代码中设置)。知道为什么它会完全恢复吗?我怎样才能阻止它恢复?

此外,我已经尝试向addEventListener("focusIn", setFormatting)textField 添加一个,但无论如何格式都会恢复。

4

0 回答 0