【发布时间】:2020-02-08 06:22:35
【问题描述】:
我的应用中有一个指示器,它有一个图标(标签),上面覆盖了一个数值。
我想通过改变标签图标的颜色来引起人们对值改变的关注。我可以通过换出使用不同颜色制作的不同图像来做到这一点。
但我想将它恢复到原来的颜色,并且仍然在屏幕上看到颜色变化并变回。我想我也许可以使用动画来做到这一点,但我不知道怎么做。
更新:
应用 Francesco 的建议,如下所示:
replace(labelstd, labelhlt, CommonTransitions.createFade(500));
replace(labelhlt, labelstd, CommonTransitions.createFade(500));
我发现它不会褪色到突出显示颜色,然后再褪色,如我所愿。它褪色为高光颜色,然后立即翻转回来。我认为这是因为淡入淡出实际上是同时发生的。
我需要使用线程来处理这个问题,还是有其他方法可以做到这一点?
【问题讨论】:
-
Label.setIcon(...)还不够吗?你想要类似淡入淡出效果的东西吗?在这种情况下,您可以使用Container.replace(Component current, Component next, Transition t)来切换两个标签。作为过渡,您可以使用CommonTransitions.createFade(int duration)或该类提供的任何其他过渡。 -
是的,setIcon 的问题在于它会进行永久性更改,我希望更改它然后将其更改回来,就像发光效果一样。我刚刚玩了一下替换功能和淡入淡出过渡 - 看起来这正是我正在寻找的 - 谢谢!
标签: codenameone