admin
2020-07-16 b5e008514ffa376154fee55423779a4f21c9f1b7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package com.fanliunion.android.app.ui.goldtask.view;
 
import android.animation.TypeEvaluator;
import android.graphics.Point;
 
/**
 * 将startValue和endValue强转成Point对象,然后同样根据fraction来计算当前动画的x和y的值,最后组装到一个新的Point对象当中并返回
 */
public class PointEvaluator implements TypeEvaluator {
    @Override
    public Object evaluate(float fraction, Object startValue, Object endValue) {
        Point startPoint = (Point) startValue;
        Point endPoint = (Point) endValue;
        float x = startPoint.x + fraction * (endPoint.x - startPoint.x);
        float y = startPoint.y + fraction * (endPoint.y - startPoint.y);
        return new Point((int) x, (int) y);
    }
}