【发布时间】:2021-11-08 13:05:41
【问题描述】:
我正在用 JAVA 编写一个类来将一个库从 Android 移植到 Harmony OS。
在下面为方法onSelectedY(boolean, float, int) 给出的Android 代码中,它需要将类AccelerateInterpolator 的构造函数添加到方法中
private void onSelectedY(final boolean isTop, float exitX, int duration)
{
....
....
this.frame.animate()
.setDuration(duration)
.setInterpolator(new AccelerateInterpolator())
.x(exitX)
.y(exitY)
.setListener(new AnimatorListenerAdapter()
{
@Override
public void onAnimationEnd(Animator animation)
{
if(isTop)
{
mFlingListener.onCardExited();
mFlingListener.topExit(dataObject);
}
else
{
mFlingListener.onCardExited();
mFlingListener.bottomExit(dataObject);
}
isAnimationRunning = false;
}
})
.rotation(getVerticalExitRotation(isTop));
}
对于 AccelerateInterpolator 类的等效 Harmony OS 组件,有一个名为 Animator.TimelineCurve 的接口。
但是它作为接口的问题是它没有构造函数,在这种情况下需要它。如果我直接使用接口,我必须在这里自己重写接口,但是不能这样做,因为没有什么可以手动重写。
OvershootInterpolator 也是如此。
这种情况的解决方法是什么?
问候,苏布汉姆
【问题讨论】:
标签: java android huawei-mobile-services huawei-developers harmonyos