Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将弯曲路径设置为另一条路径的动画_Android_Android Animation - Fatal编程技术网

Android 将弯曲路径设置为另一条路径的动画

Android 将弯曲路径设置为另一条路径的动画,android,android-animation,Android,Android Animation,我必须为曲线路径设置动画,使其指向路径点的其他位置。我使用的是cubicTo和以下五点: Path mainFillPath = new Path(); mainFillPath.reset(); mainFillPath.moveTo(leftPointX, leftPointY); mainFillPath.cubicTo(leftPointX, leftPointY, centerPointX1, centerPointY1, centerPointX,

我必须为曲线路径设置动画,使其指向路径点的其他位置。我使用的是cubicTo和以下五点:

    Path mainFillPath = new Path();
    mainFillPath.reset();
    mainFillPath.moveTo(leftPointX, leftPointY);

    mainFillPath.cubicTo(leftPointX, leftPointY, centerPointX1, centerPointY1, centerPointX, centerPointY);
    mainFillPath.cubicTo(centerPointX, centerPointY, centerPointX2, centerPointY2, rightPointX, rightPointY);

    mainFillPath.lineTo(rightPointX, 0);
    mainFillPath.lineTo(0, 0);

    mainFillPath.close();
    final ObjectAnimator anim = ObjectAnimator.ofObject(this, "buttonLoc",
            new PathEvaluator(), path.getPoints().toArray());
    anim.setDuration(2000);
我正在画布上绘画
canvas.drawPath(myPath,paint)

我必须使用哪位动画师才能获得此波浪效果:

我在一些项目中尝试过ObjectAnimator和ValueAnimator。其中之一是使用PathEvaluator()在特定路径上设置移动按钮的动画,如下所示:

    Path mainFillPath = new Path();
    mainFillPath.reset();
    mainFillPath.moveTo(leftPointX, leftPointY);

    mainFillPath.cubicTo(leftPointX, leftPointY, centerPointX1, centerPointY1, centerPointX, centerPointY);
    mainFillPath.cubicTo(centerPointX, centerPointY, centerPointX2, centerPointY2, rightPointX, rightPointY);

    mainFillPath.lineTo(rightPointX, 0);
    mainFillPath.lineTo(0, 0);

    mainFillPath.close();
    final ObjectAnimator anim = ObjectAnimator.ofObject(this, "buttonLoc",
            new PathEvaluator(), path.getPoints().toArray());
    anim.setDuration(2000);

嗨,你解决那个问题了吗?如果你有,你能分享你的解决方案吗?在这里,还是发电子邮件?artemenkobogdan@gmail.com