在Java中延迟一个循环以获得动画效果

Posted

技术标签:

【中文标题】在Java中延迟一个循环以获得动画效果【英文标题】:Delay a loop in Java for animation effect 【发布时间】:2013-03-02 17:58:45 【问题描述】:

我知道这是一个重复的问题。但是,没有答案帮助我解决了我的问题。 我正在Vaadin 做一个项目。因为我的布局很少(ref this links to understand my layout)。当我按下按钮时,我需要将组件滑入和滑出。而且,我成功地做到了。

但是,我的问题是;为了让它感觉更好,我想减慢滑动效果。所以,它看起来像一种动画。我通过将 setExpandRatio() 从 1 更改为 0 来滑动组件。

setExpandRatio(component, 1.0f);

setExpandRatio(component, 0f);

这样它会滑动。

为了减慢滑动速度,我尝试了这个。

float i = 1.0;
while(i >= 0)

  setExpandRatio(component, i);
  i = i - 0.1;
  try 
    Thread.sleep(1000);
       
    catch(InterruptedException ex) 

它只需等待 1 秒钟,然后快速向下滑动组件。我也尝试过使用

wait(1000);

但是,没有用。 以前有人解决过这个问题吗?

【问题讨论】:

【参考方案1】:

看看Animator 插件,它提供了很好的方法来使用浏览器的客户端功能为组件设置动画。

【讨论】:

这正是我所需要的。但是,ROLL_DOWN_CLOSE_REMOVE 和 ROLL_RIGHT_CLOSE_REMOVE 呢?是不是不能实现?

以上是关于在Java中延迟一个循环以获得动画效果的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI 动画:如何延迟重复动画

css3过渡和动画的区别详解

css3 实现动画效果,怎样使他无限循环动下去?

jquery中动画效果的函数

一个简单的循环往复的动画效果

js通过循环多张图片实现动画效果