Android学习—补间动画(渐变动画)
使用xml的方式设置动画属性
1 <?xml version="1.0" encoding="utf-8"?> 2 <set xmlns:android="http://schemas.android.com/apk/res/android"> 3 <!-- 4 fromAlpha:动画的初始状态 5 toAlpha:动画的最终状态 6 duration:动画从初始状态到最终状态的持续时间 7 repeatCount:不包括第一次显示的,显示次数 8 --> 9 <alpha 10 android:fromAlpha="0.1" 11 android:toAlpha="1.0" 12 android:duration="2000" 13 android:repeatCount="3" 14 /> 15 </set>
1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 3 android:layout_height="match_parent" 4 tools:context="com.test2_23.test2_23.AlphaAnimation_Activity"> 5 6 <ImageView 7 android:id="@+id/img_Alpha" 8 android:src="@drawable/img_bird" 9 android:layout_width="wrap_content" 10 android:layout_height="wrap_content" 11 android:layout_centerInParent="true" 12 /> 13 14 </RelativeLayout>
1 public class AlphaAnimation_Activity extends Activity { 2 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 setContentView(R.layout.activity_alpha_animation_); 7 //获取到要设置动画的控件 8 ImageView iv = (ImageView) findViewById(R.id.img_Alpha); 9 //获取动画文件 10 Animation animation = AnimationUtils.loadAnimation(this,R.anim.animation); 11 //清除之前的动画 12 iv.clearAnimation(); 13 //开始动画 14 iv.startAnimation(animation); 15 } 16 }
使用java的方式来设置动画属性
1 public class javaAlpha_Activity extends Activity { 2 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 setContentView(R.layout.activity_java_alpha_); 7 ImageView img = (ImageView) findViewById(R.id.img_Alpha_java); 8 //使用java代码实现也非常简单,直接设置一个Animation类的对象就可以了 9 //AlphaAnimation 是Animation的子类 10 //在构造函数中设置他的初始状态fromAlpha和最终状态toAlpha,是float类型 11 Animation animation = new AlphaAnimation(0.1f,1.0f); 12 //设置持续时间 13 animation.setDuration(2000); 14 //设置重复次数 15 animation.setRepeatCount(3); 16 //清除原有的动画,避免多次点击出现重复的效果 17 img.clearAnimation(); 18 //开始执行动画 19 img.startAnimation(animation); 20 } 21 }
补间动画(TweenAnimation):补间动画就是确定了动画的启始和终点两个端点状态之后,由系统自动计算中间的各个状态,并补充到两个端点之间,形成一个连续的动画效果。
补间动画可以分为4种类型:
渐变动画(AlphaAnimation)
缩放动画 (scaleAnimation)
平移动画(TranslateAnimation)
旋转动画(RotateAnimation)
这几种动画都可以用xml文件和java代码的方式实现,
渐变动画xml实现方式:
1.在res目录下创建文件夹anim
2.在anim文件夹下创建animation.xml动画文件
3.在animation.xml中描述某种动画的属性
4.在java代码中用AnimationUtils.loadAnimation方法加载动画
5.使用View的startAnimation方法启动动画
渐变动画效果:可以演示一个视图在透明度上的渐变效果。
主要属性:
FromAlpha:动画启始透明度,取值在0.0-1.0之间
toAlpha:动画结束时透明度,取值在0.0-1.0之间
duration:动画从开始到结束的持续时间以毫秒做单位
repeatCount :动画的重复次数,不包括第一次播放
posted on 2016-02-24 14:17 Become_stronger 阅读(1184) 评论(0) 收藏 举报
浙公网安备 33010602011771号