代号一个标签的动画前景

codename one animate forground of label

这对我不起作用。我正在尝试更改颜色 当我按下按钮时。

 Form hi = new Form("Layout Animations", new BoxLayout(BoxLayout.Y_AXIS));
    Button button = new Button("button");

    Label l = new Label(" ");
    l.setUIID("DestinationUIID");
    l.getAllStyles().setFgColor(0xff0000);

    Label l$ = new Label("Label");
    l$.setUIID("DestinationUIID");
    l$.getAllStyles().setFgColor(0x00ff00);

    hi.add(l$);

    ComponentAnimation ca = l$.createStyleAnimation("DestinationUIID", 2000);
    l$.getAnimationManager().addAnimation(ca, () -> onCompletion());

    button.addActionListener((e) -> {

        //l$.animate();
        l$.getAllStyles().setFgColor(0xff0000);
         l$.animate();
        //hi.getContentPane().animateHierarchyFade(2000, 0);
    });
    hi.add(button);
    hi.show();

我不明白 UIID 的概念或动画的语法。

从样式动画到 animate()UITimer 的调用,有很多方法可以为前景设置动画。

使用样式动画,我们可以为 500 毫秒的过渡做这样的事情:

ComponentAnimation ca = myLabel.createStyleAnimation("DestinationUIID", 500);
myLabel.getAnimationManager().addAnimation(ca, () -> onCompletion());