TextField 的文本不会更新,但其他属性会更新
TextField's text does not update, but the other properties do
我有一个 class 和一个 TextField
作为一个 属性。此文本字段已添加到舞台并具有一个数字作为文本 属性 的值。我还有一个方法,必须改变这个数字:
public function decrementCooldown()
{
cdText.text = (--cd.value != 0)? cd.value : "";
}
但是,它没有任何改变。我已经这样修改了代码:
public function decrementCooldown()
{
cdText.text = (--cd.value != 0)? cd.value : "";
cdText.x -= 100;
}
这导致我的文本字段向左移动,但其文本保持不变。
然后,我试着追踪修改前后的文本。输出的第二行包含我想要出现在屏幕上的数字,它比第一行的数字少 1。
我想知道如何解决我的问题。
好吧,这对我来说真的很奇怪,但问题出在我在 TextField
.
上的 DropShadowFilter
我已经解决了这个问题,方法是在修改文本之前添加两行清除 filters
数组,然后再添加一个 DropShadowFilter
:
public function decrementCooldown()
{
cdText.filters = [];
cdText.text = (--cd.value != 0)? cd.value : "";
cdText.filters = [new DropShadowFilter()];
}
虽然看起来像一个错误。
我有一个 class 和一个 TextField
作为一个 属性。此文本字段已添加到舞台并具有一个数字作为文本 属性 的值。我还有一个方法,必须改变这个数字:
public function decrementCooldown()
{
cdText.text = (--cd.value != 0)? cd.value : "";
}
但是,它没有任何改变。我已经这样修改了代码:
public function decrementCooldown()
{
cdText.text = (--cd.value != 0)? cd.value : "";
cdText.x -= 100;
}
这导致我的文本字段向左移动,但其文本保持不变。
然后,我试着追踪修改前后的文本。输出的第二行包含我想要出现在屏幕上的数字,它比第一行的数字少 1。
我想知道如何解决我的问题。
好吧,这对我来说真的很奇怪,但问题出在我在 TextField
.
DropShadowFilter
我已经解决了这个问题,方法是在修改文本之前添加两行清除 filters
数组,然后再添加一个 DropShadowFilter
:
public function decrementCooldown()
{
cdText.filters = [];
cdText.text = (--cd.value != 0)? cd.value : "";
cdText.filters = [new DropShadowFilter()];
}
虽然看起来像一个错误。