安卓笔记——动画

Posted _23_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓笔记——动画相关的知识,希望对你有一定的参考价值。

帧动画

缺点:内存消耗占用太多

补间动画

来自安卓老师的图
在这里插入图片描述

透明度变化

1、在activity.xml内写上相应的图片及按钮。

2、在 MainActivity .java文件中绑定图片,按钮,增加动画效果

ImageView imageView;
@SuppressLint("WrongViewCast")

imageView = findViewById(R.id.imageView);
        findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//                透明度动画
                ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(imageView,"alpha",1,0,1,0);   //缩放动画
                objectAnimator.setDuration(5000);         //动画执行时间
                objectAnimator.start();                   //动画开始
            }
        });

缩放

findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//                缩放动画
                ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(imageView,"scaleX",2,0.5f);   //缩放动画
                objectAnimator.setDuration(5000);         //动画执行时间
                objectAnimator.start();                   //动画开始
            }
        });

位移

findViewById(R.id.button3).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//                位移动画
                ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(imageView,"translationX",-200,200);   //缩放动画
                objectAnimator.setDuration(5000);         //动画执行时间
                objectAnimator.start();                   //动画开始
            }
        });

旋转

findViewById(R.id.button4).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//                旋转动画
                ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(imageView,"rotation",0,360);   //缩放动画
                objectAnimator.setDuration(5000);         //动画执行时间
                objectAnimator.start();                   //动画开始
            }
        });

组合动画

findViewById(R.id.button5).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//                组合动画
                ObjectAnimator objectAnimatorX = ObjectAnimator.ofFloat(imageView,"scaleX",0,2f);   //缩放动画
                ObjectAnimator objectAnimatorY = ObjectAnimator.ofFloat(imageView,"scaleY",0,2f);   //缩放动画
                ObjectAnimator objectAnimatoralpha = ObjectAnimator.ofFloat(imageView,"alpha",1,0f);   //缩放动画
//                合成
                AnimatorSet animatorSet = new AnimatorSet();
                animatorSet.play(objectAnimatoralpha)
                           .with(objectAnimatorX)
                           .with(objectAnimatorY);
//                执行:play   同时:with   之后:before
                animatorSet.setDuration(5000);         //动画执行时间
                animatorSet.start();                   //动画开始
            }
        });

在这里插入图片描述

以上是关于安卓笔记——动画的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——CSS动画

VSCode自定义代码片段7——CSS动画

VSCode自定义代码片段7——CSS动画

java 代码片段【安卓】

使用嵌套片段和动画对象

Unity笔记一些动画系统状态机细节