在Android中,分别可以在xml中定义Animation,也可以在程序代码中定义,下面的小例子是利用RotateAnimation简单展示一下两种方法的用法,对于其他动画,如ScaleAnimation,AlphaAnimation,原理是一样的。

方法一:在xml中定义动画:

<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android">        <rotate         android:interpolator="@android:anim/accelerate_decelerate_interpolator"        android:fromDegrees="0"         android:toDegrees="+360"        android:duration="3000" />        <!-- rotate 旋转动画效果       属性:interpolator 指定一个动画的插入器,用来控制动画的速度变化        fromDegrees 属性为动画起始时物件的角度            toDegrees   属性为动画结束时物件旋转的角度,+代表顺时针        duration  属性为动画持续时间,以毫秒为单位--></set>

使用动画的Java代码,程序的效果是点击按钮,TextView旋转一周:

package com.ray.animation;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.view.animation.Animation;import android.view.animation.AnimationUtils;import android.widget.Button;import android.widget.TextView;public class TestAnimation extends Activity implements OnClickListener{    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        Button btn = (Button)findViewById(R.id.Button01);        btn.setOnClickListener(this);         }@Overridepublic void onClick(View v) {Animation anim = AnimationUtils.loadAnimation(this, R.anim.my_rotate_action);findViewById(R.id.TextView01).startAnimation(anim);}}

方法二:直接在代码中定义动画(效果跟方法一类似):

package com.ray.animation;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.view.animation.AccelerateDecelerateInterpolator;import android.view.animation.Animation;import android.view.animation.RotateAnimation;import android.widget.Button;public class TestAnimation extends Activity implements OnClickListener{    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        Button btn = (Button)findViewById(R.id.Button);        btn.setOnClickListener(this);         }public void onClick(View v) {Animation anim = null;anim = new RotateAnimation(0.0f,+360.0f);anim.setInterpolator(new AccelerateDecelerateInterpolator());anim.setDuration(3000);findViewById(R.id.TextView01).startAnimation(anim);}}

更多相关文章

  1. Android中自定义下拉样式Spinner
  2. 安卓课程六 android常用布局属性的介绍
  3. Android高手进阶教程(六)之----Android 中MenuInflater的使用(布
  4. shape属性大全
  5. Shape的相关属性详解
  6. Android--shape-指定图形的corners、gradient、padding、size、s
  7. Android接口定义语言---AIDL(一)

随机推荐

  1. Android(安卓)获取内存信息
  2. [Linux] 批量查看Android应用程序的文件
  3. android Handler and progress
  4. Android(安卓)反射简化findViewById
  5. [Android实例] android多点触摸demo
  6. Android之AlertDialog.Builder详解
  7. android蓝牙模块
  8. CentOS 安装 Android
  9. android 弹出日期选择框
  10. 使用组件构建Android应用程序