当我更改动态文本字段的文本值时,文本字段将变为空白,而不显示新值。
我有一个标题为“game_board”的MovieClip,由AS3动态添加到舞台上。 (开始阶段是空白的。)
我有另一个标题为“stage_2”的MovieClip,由AS3动态地添加为“game_board”。
“stage_2”包含一个预制板,上面有不同的动态文本字段。它们都有实例名称。例如“text_1”。 this.game_board.stage_2.text_1.text
的原始值为0。
当我这样做时:
this.game_board.stage_2.text_1.text = "test";
trace(this.game_board.stage_2.text_1.text); //succesfully shows new value, "test"
跟踪成功显示了新值,但是舞台上的文本字段显示为“0”,现在绝对没有显示,它只是消失了。我尝试运行addChild
,以防由于某种原因被移动到底层,但这不起作用。即使舞台只包含该文本字段,它仍然只是空白。
我做错了什么?
答案 0 :(得分:5)
试试这个:
this.game_board.stage_2.text_1.embedFonts = false;
this.game_board.stage_2.text_1.text = "test";
发生这种情况是因为flash cs5默认使用embedFonts
,所以如果你没有在你的库中设置字体然后将它附加到你的文档,flash cs5将只嵌入你文本输入中的字体,如果您将text_1
的值从0
更改为te
并删除embedFonts
,则可以进行测试,只有tet
没有s
,要在所有文字中使用embedFonts
,请参阅:Embedding Fonts in AS3 - Dynamic Text Field disappears