TextField的文本不会更新,但是其他属性会更新

时间:2018-07-03 22:47:57

标签: text textfield haxe openfl

我有一个以TextField作为属性的类。此文本字段已添加到舞台,并具有一个数字作为text属性的值。我也有一种方法,必须更改此数字:

public function decrementCooldown()
{
    cdText.text = (--cd.value != 0)? cd.value : "";
}

但是,它什么也没有改变。我以这种方式修改了代码:

public function decrementCooldown()
{
    cdText.text = (--cd.value != 0)? cd.value : "";
    cdText.x -= 100;
}

这导致我的文本字段向左移动,但其文本保持不变。

然后,我尝试在修改文本前后跟踪文本。输出的第二行包含我想在屏幕上显示的数字,比第一行的数字小1。

我想知道如何解决我的问题。

1 个答案:

答案 0 :(得分:0)

好的,这对我来说真的很奇怪,但是问题出在我在DropShadowFilter上使用的TextField上。

我已解决此问题,方法是在修改文本之前添加两行清除filters数组,然后在其后再次添加DropShadowFilter

public function decrementCooldown()
{
    cdText.filters = [];
    cdText.text = (--cd.value != 0)? cd.value : "";
    cdText.filters = [new DropShadowFilter()];
}

虽然看起来像个错误。