# Anim **Repository Path**: zp000123/Anim ## Basic Information - **Project Name**: Anim - **Description**: No description available - **Primary Language**: Android - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-02-06 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Android 动画 ### 介绍 android 的动画可以分为三种:View 动画、帧动画和属性动画,是帧动画也属于View动画的一种, 只不过它和平移、旋转等常见的 View动画在表现形式上略有不同而已。View动画通过通过对场景中 的对象不断做图像变换(平移、缩放、旋转、透明度)从而产生动画效果,他是一种渐进式的动画, 并且View动画支持自定义。帧动画通过顺序播放一系列图像从而产生动画效果,可以简单理解为图片 切换动画,很显然,如果图片过大过多就会导致OOM.属性动画通过动态的改变对象的属性从而达到动画 效果,属性动画是API 11的新特性。 #### View 动画 View动画的作用对象是View,它支持 4 种动画效果,分别是 平移动画、缩放动画、旋转动画和透明动画。 分别对应 TranslateAnimation 、ScaleAnimation、RotateAnimation、AlphaAnimation。 要使用 View 动画,首先要创建动画的 XML 文件,这个文件的路径为: res/anim/filename.xml。 ``` ``` 应用动画 ``` val mButton = findViewById(R.id.button) as Button val animation = AnimationUtils.loadAnimation(this, R.anim.animation_test) mButton.startAnimation(animation) ``` 代码也可以设置动画 ``` val alphaAnimation = AlphaAnimation(0f,1f) alphaAnimation.duration = 300 mButton.startAnimation(animation) ``` #### 帧动画 要使用帧动画,首先要创建动画的 XML 文件,这个文件的路径为: res/drawable/filename.xml。 ``` ``` 然后将上述的 Drawable 作为 View 的背景通过 Drawable 来播放动画即可: ``` val mButton = findViewById