android实现旋转、平移、缩放和透明度渐变的补间动画,具体实现如下:
1.在新建项目的res目录中,创建一个名为anim的目录,并在该目录中创建实现旋转、平移、缩放和透明度渐变的动画资源文件。
透明度渐变的动画资源文件anim_alpha.xml(完全不透明->完全透明->完全不透明)
旋转的动画资源文件anim_rotate.xml(0度->720度->360度->0度)
缩放动画资源文件anim_scale.xml(放大2倍->收缩回来)
平移动画资源文件anim_translate.xml(屏幕左侧->屏幕右侧->屏幕左侧)
主界面资源文件:
res/layout/main.xml: [html] view plain copy
效果如图
2.MainActivity:
在onCreat()方法中,首先获取动画资源文件中创建的动画资源,然后获取要应用动画效果的ImageView,再获取“旋转”按钮,并为该按钮添加单击事件监听器,在重写onClik()方法中,播放动画。具体代码如下:
[java] view plain copy
package com.example.test;
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.ImageView;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Animation rotate=AnimationUtils.loadAnimation(this, R.anim.anim_rotate);//获取旋转动画资源
final Animation translate=AnimationUtils.loadAnimation(this, R.anim.anim_translate);//获取平移动画资源
final Animation scale=AnimationUtils.loadAnimation(this, R.anim.anim_scale);//获取缩放动画资源
final Animation alpha=AnimationUtils.loadAnimation(this, R.anim.anim_alpha);//获取透明度变化动画资源
//获取要应用动画效果的ImageView
final ImageView iv=(ImageView)findViewById(R.id.imageView1);
Button button1=(Button)findViewById(R.id.button1);//获取"旋转"按钮
button1.setonClickListener(new onClickListener() {
@Override
public void onClick(View arg0) {
//播放旋转动画
iv.startAnimation(rotate);
}
});
Button button2=(Button)findViewById(R.id.button2);//获取"平移"按钮
button2.setonClickListener(new onClickListener() {
@Override
public void onClick(View arg0) {
//播放平移动画
iv.startAnimation(translate);
}
});
Button button3=(Button)findViewById(R.id.button3);//获取"缩放"按钮
button3.setonClickListener(new onClickListener() {
@Override
public void onClick(View arg0) {
//播放缩放动画
iv.startAnimation(scale);
}
});
Button button4=(Button)findViewById(R.id.button4);//获取"透明度渐变"按钮
button4.setonClickListener(new onClickListener() {
@Override
public void onClick(View arg0) {
//播放透明度渐变动画
iv.startAnimation(alpha);
}
});
}
}
效果如图1、图2、图3、图4:
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对考高分网的支持。



