安卓垂直抖动动画,实现小球掉落弹起效果

实现方法:

private void showShakeAnimation(final View view, final int y){
    if(y>=0){
        return;
    }
    TranslateAnimation anim = new TranslateAnimation(0,
            0, 0, y);
    anim.setInterpolator(new CycleInterpolator(1f));
    anim.setDuration(200);
    anim.setAnimationListener(new Animation.AnimationListener() {
        @Override
        public void onAnimationStart(Animation animation) {

        }
        @Override
        public void onAnimationEnd(Animation animation) {
            showShakeAnimation(view, y + 3);//循环跳动
        }
        @Override
        public void onAnimationRepeat(Animation animation) {

        }
    });
    view.startAnimation(anim);
}
调用方法:
showShakeAnimation(view, -9);
这里传入的y=-9;实现3次跳动后停止,缺点是没有考虑重力加速度的问题,不过目前效果已够用。

你可能感兴趣的:(安卓垂直抖动动画,实现小球掉落弹起效果)