1

我在这里使用 KenBurnsView 库

但是过渡并不顺利,我不知道如何使用github上记录的以下代码:

RandomTransitionGenerator generator = new RandomTransitionGenerator(duration, interpolator);
kbv.setTransitionGenerator(generator);

谁能帮助我如何创建一个平稳的过渡?

4

1 回答 1

4

所以你已经有了一个KenBurnsView类型对象,即kvb. 如文档所述添加自定义转换并且您还建议。

制作

RandomTransitionGenerator generator = new RandomTransitionGenerator(duration, interpolator);

RandomTransitionGenerator是一个已经包含在 lib 中的类

它需要2个参数:

1)duration即以毫秒为单位(通常是这种情况)

2) interpolator- 它更像是动画的效果或动画的变化率。

我们需要创建一个类型的对象Interpolator并像这样使用它:

AccelerateDecelerateInterpolator ACCELERATE_DECELERATE = new AccelerateDecelerateInterpolator();
RandomTransitionGenerator generator = new RandomTransitionGenerator(10000, ACCELERATE_DECELERATE);
//duration = 10000ms = 10s and interpolator = ACCELERATE_DECELERATE
kbv.setTransitionGenerator(generator); //set new transition on kbv

文档还补充说,如果您需要更多自定义,您可以制作自己的TransitionGenerator课程,例如RandomTransitionGenerator

于 2015-05-08T14:12:15.097 回答