import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.animation.TimeInterpolator;
import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Canvas;
import android.os.Handler;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.view.animation.LinearInterpolator;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import com.yibai.svideo.R;
import java.util.Random;
/**
* zzw:2020/07/03
* 在点击时将心形的图片 add 到整个 view 中,然后在执行动画
*/
public class LoveAnimator extends RelativeLayout {
int timeout = 400;//双击间格毫秒延时
long singleClickTime;//记录第一次点击的时间
DoubleClickListener mDoubleClickListener;
SimpleClickListener mSimpleClickListener;
private Context mContext;
final float[] num = {-30, -20, 0, 20, 30}; // 随机心形图片的角度
public LoveAnimator(Context context) {
this(context, null);
}
public LoveAnimator(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public LoveAnimator(Context context, AttributeSet attrs, int defStyleAttr) {
this(context, attrs, defStyleAttr, 0);
}
@SuppressLint("NewApi")
public LoveAnimator(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
initView(context);
}
private void initView(Context context) {
mContext = context;
singleClickTime = System.currentTimeMillis();
clickHandler = new Handler();
}
@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
clickCount = 0;//切换新界面时,重置点击次数
}
//手指按下的点为(x1, y1)手指离开屏幕的点为(x2, y2)
float x1 = 0;
float x2 = 0;
float y1 = 0;
float y2 = 0;
boolean isMove = false;
private Handler clickHandler;
private int clickCount = 0;//记录连续点击次数
@SuppressLi