最终实现效果:
项目目录结构:
main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/iv_animation_logo"
android:contentDescription="@string/animationContentDescription"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/animation_logo"/>
</RelativeLayout>
AnimationDemoActivity.java
package com.royal.animationDemo;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
/**
* 图片渐变动画
*/
public class AnimationDemoActivity extends Activity {
public static final int ANIMATION_TIME = 5000;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
// 去掉界面任务条
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
//图片渐变模糊度始终
AlphaAnimation aa = new AlphaAnimation(0.1f,1.0f);
//渐变时间
aa.setDuration(ANIMATION_TIME);
//展示图片渐变动画
this.findViewById(R.id.iv_animation_logo).startAnimation(aa);
//渐变过程监听
aa.setAnimationListener(new AnimationListener() {
/**
* 动画开始时
*/
@Override
public void onAnimationStart(Animation animation) {
System.out.println("动画开始...");
}
/**
* 重复动画时
*/
@Override
public void onAnimationRepeat(Animation animation) {
System.out.println("动画重复...");
}
/**
* 动画结束时
*/
@Override
public void onAnimationEnd(Animation animation) {
System.out.println("动画结束...");
}
});
}
}
string.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">AnimationDemo</string>
<string name="animationContentDescription">渐变图片动画描述</string>
</resources>
打印结果: