属性动画

属性动画

透明动画

 private void setAlpha() {
     ValueAnimator valueAnimator = (ValueAnimator) AnimatorInflater.loadAnimator(MainActivity.this,R.animator.alphe);
    valueAnimator.setTarget(textView);

    valueAnimator.setDuration(5000);

    valueAnimator.addListener(new Animator.AnimatorListener() {
        @Override
        public void onAnimationStart(Animator animation) {
            Toast.makeText(MainActivity.this, "开始", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onAnimationEnd(Animator animation) {
            Toast.makeText(MainActivity.this, "结束", Toast.LENGTH_SHORT).show();
            ValueAnimator valueAnimator1= (ValueAnimator) AnimatorInflater.loadAnimator(MainActivity.this,R.animator.alpha);
            valueAnimator1.setTarget(textView);
            valueAnimator1.setDuration(3000);
            valueAnimator1.start();
        }

        @Override
        public void onAnimationCancel(Animator animation) {

        }

        @Override
        public void onAnimationRepeat(Animator animation) {

        }
    });

    valueAnimator.start();
}

在这里插入图片描述
旋转动画

private void setRotate() {
        ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(textView,"rotation",0,720);
        objectAnimator.setDuration(5000);
        objectAnimator.setRepeatMode(ObjectAnimator.REVERSE);
        objectAnimator.start();
    }

在这里插入图片描述
缩放动画

private void setScal() {
        ObjectAnimator objectAnimator =ObjectAnimator.ofFloat(textView,"scaleX",1f,3f);
        objectAnimator.setDuration(5000);
        objectAnimator.setRepeatMode(ObjectAnimator.REVERSE);
        objectAnimator.addListener(new Animator.AnimatorListener() {
            @Override
            public void onAnimationStart(Animator animation) {
                Toast.makeText(MainActivity.this, "开始", Toast.LENGTH_SHORT).show();
            }

        @Override
        public void onAnimationEnd(Animator animation) {
            Toast.makeText(MainActivity.this, "结束", Toast.LENGTH_SHORT).show();
            ObjectAnimator objectAnimator1 = ObjectAnimator.ofFloat(textView,"scaleX",3f,1f);
            objectAnimator1.start();
        }

        @Override
        public void onAnimationCancel(Animator animation) {

        }

        @Override
        public void onAnimationRepeat(Animator animation) {

        }
    });
    objectAnimator.start();
}

在这里插入图片描述
平移动画

private void setTranslation() {
        float translationY = textView.getTranslationY();
        ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(textView,"translationY",translationY,translationY+100);
        objectAnimator.setDuration(5000);
        objectAnimator.setRepeatCount(3);

    objectAnimator.addListener(new Animator.AnimatorListener() {
        @Override
        public void onAnimationStart(Animator animation) {
            Toast.makeText(MainActivity.this, "开始", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onAnimationEnd(Animator animation) {
            Toast.makeText(MainActivity.this, "结束", Toast.LENGTH_SHORT).show();
            ObjectAnimator objectAnimator1 = ObjectAnimator.ofFloat(textView,"translationY",0,0);
            objectAnimator1.start();
        }

        @Override
        public void onAnimationCancel(Animator animation) {

        }

        @Override
        public void onAnimationRepeat(Animator animation) {

        }
    });

    objectAnimator.start();

}

在这里插入图片描述
背景颜色

  private void setpro() {

    ObjectAnimator objectAnimator = ObjectAnimator.ofInt(textView,"backgroundColor",Color.BLUE,Color.RED);

    objectAnimator.setDuration(3000);
    objectAnimator.start();

}

在这里插入图片描述
属性动画集合方法1

 private void set() {
    ObjectAnimator objectAnimator =ObjectAnimator.ofInt(textView,"backgroundColor",Color.BLUE,Color.RED);
    ObjectAnimator objectAnimator1 = ObjectAnimator.ofFloat(textView,"translationY",0,200);
    ObjectAnimator objectAnimator2 = ObjectAnimator.ofFloat(textView,"scaleX",1f,3f);
    ObjectAnimator objectAnimator3 = ObjectAnimator.ofFloat(textView,"rotation",0,720);
    ObjectAnimator objectAnimator4 = ObjectAnimator.ofFloat(textView,"alpha",0,1);

    AnimatorSet animatorSet = new AnimatorSet();
    animatorSet.play(objectAnimator).with(objectAnimator1).before(objectAnimator4).after(objectAnimator2).with(objectAnimator3);
    animatorSet.setDuration(5000);
    animatorSet.start();

}

在这里插入图片描述
属性动画集合方法2

  private void set() {

    PropertyValuesHolder propertyValuesHolder = PropertyValuesHolder.ofInt("backgroundColor",Color.BLUE,Color.RED);
    PropertyValuesHolder propertyValuesHolder1 = PropertyValuesHolder.ofFloat("translationY",0,200);
    PropertyValuesHolder propertyValuesHolder2 = PropertyValuesHolder.ofFloat("scaleX",1f,3f);
    PropertyValuesHolder propertyValuesHolder3 =PropertyValuesHolder.ofFloat("rotation",0,720);
    PropertyValuesHolder propertyValuesHolder4=PropertyValuesHolder.ofFloat("alpha",1,0);

    ObjectAnimator objectAnimator =ObjectAnimator.ofPropertyValuesHolder(textView,propertyValuesHolder,propertyValuesHolder1,propertyValuesHolder2,propertyValuesHolder3,propertyValuesHolder4);

    objectAnimator.setDuration(5000);
    objectAnimator.setRepeatCount(3);
    objectAnimator.start();


}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值