Animation
来源:互联网 发布:淘宝买家一个钻多少钱 编辑:程序博客网 时间:2024/05/22 06:25
动画(专题)
实现android UI界面动画效果的API,Animations提供了一系列的动画效果,可以进行旋转、缩放、淡入淡出等。
Tweened Animations
该类Animations提供了旋转、移动、伸展和淡出等效果。Alpha——淡入淡出,Scale——缩放效果,Rotate——旋转,Translate——移动效果。
- AlphaAnimation
- TranslateAnimation
- ScaleAnimation
- RotateAnimation
- AnimationSet
代码
TranslateAnimation translateAnimation = new TranslateAnimation( Animation.RELATIVE_TO_SELF,0f, Animation.RELATIVE_TO_SELF,0.5f, Animation.RELATIVE_TO_SELF,0f, Animation.RELATIVE_TO_SELF,0.5f); translateAnimation.setDuration(1000); image.startAnimation(animationSet);```#### 使用xml配置translate.xml
Animation animation = AnimationUtils.loadAnimation( Animation1Activity.this, R.anim.translate); image.startAnimation(animation);```## AnimationSet一个AnimationSet包含了一系列的Animation</br></br>#### xml配置
代码方式
AnimationSet animationSet = new AnimationSet(true); AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0); RotateAnimation rotateAnimation = new RotateAnimation(0, 360, Animation.RELATIVE_TO_SELF,0.5f, Animation.RELATIVE_TO_SELF,0.5f); rotateAnimation.setDuration(1000); animationSet.addAnimation(rotateAnimation); animationSet.addAnimation(alphaAnimation); image.startAnimation(animationSet);```## InterpolatorInterpolator定义了动画变化的速率,在Animations框架当中定义了一下几种Interpolator- AccelerateDecelerateInterpolator:在动画开始与结束的地方速率改变比较慢,在中间的时候速率快;- AccelerateInterpolator:在动画开始的地方速率改变比较慢,然后开始加速;- CycleInterpolator:动画循环播放特定的次数,速率改变沿着正弦曲线;- DecelerateInterpolator:在动画开始的地方速率改变比较慢,然后开始减速;- LinearInterpolator:动画以均匀的速率改变。AnimationSet共享
android:shareInterpolator=”true”“`
若不需共享,可设为false,再在每个动画里单独设置。
Frame-by-Frame Animations
这一类Animations可以创建一个Drawable序列,这些Drawable可以按照指定的时间间歇一个一个的显示。
xml方式,在drawable文件夹中新建
<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> <item android:drawable="@drawable/a_01" android:duration="50"/> <item android:drawable="@drawable/a_02" android:duration="50"/> <item android:drawable="@drawable/a_03" android:duration="50"/> <item android:drawable="@drawable/a_04" android:duration="50"/> <item android:drawable="@drawable/a_05" android:duration="50"/> <item android:drawable="@drawable/a_06" android:duration="50"/></animation-list>```java代码```objc imageView.setBackgroundResource(R.anim.anim); AnimationDrawable animationDrawable = (AnimationDrawable) imageView.getBackground(); animationDrawable.start();```<div class="se-preview-section-delimiter"></div>## AnimationListener在动画执行的各个阶段会得到通知,从而调用相应的方法:- onAnimationEnd(Animation animation) - 当动画结束时调用- onAnimationRepeat(Animation animation) - 当动画重复时调用- onAniamtionStart(Animation animation) - 当动画启动时调用<div class="se-preview-section-delimiter"></div>## LayoutAnimationsControllerLayoutAnimationsController可以用于实现使多个控件按顺序一个一个的显示。- LayoutAnimationsController用于为一个layout里面的控件,或者是一个ViewGroup里面的控件设置统一的动画效果。- 每一个控件都有相同的动画效果。- 控件的动画效果可以在不同的时间显示出来。- LayoutAnimationsController可以在xml文件当中设置,以可以在代码当中进行设置。<div class="se-preview-section-delimiter"></div>#### xml中使用创建layoutAnimation为根元素的xml文件- android:delay - 动画间隔时间;子类动画时间间隔 (延迟) 70% 也可以是一个浮点数 如“1.2”等- android:animationOrder - 动画执行的循序(normal:顺序,random:随机,reverse:反向显示)- android:animation – 引用动画效果文件<div class="se-preview-section-delimiter"></div>
0 0
- animation
- animation
- Animation
- Animation
- Animation
- Animation
- Animation
- Animation
- Animation
- Animation
- animation
- Animation
- Animation
- animation
- Animation
- Animation
- Animation
- Animation
- MFC 判断文件目录是否存在 WIN10系统
- php访问者模式
- Linux开发工具(gcc,gdb,make,shell)——三级优化分别做了什么
- db,dw,dd
- Java Web开发:Spring MVC连接 MongoDB启动用户名密码
- Animation
- 深入理解OkHttp源码(一)——提交请求
- opencv学习笔记,调用摄像头并且对视频进行canny处理
- LeetCode 416. Partition Equal Subset Sum
- Vim的四种模式
- tomcat上传图片,重启eclipse消失
- KMP算法
- ajax学习笔记
- wemall doraemon中Android app商城系统向指定URL发送GET方法的请求代码