AndroidUI 视图动画-透明动画效果 (AlphaAnimation)

1、新建一个Android项目,Activity添加一个按钮如下代码:

    <Button android:id="@+id/btnAiphaAnimation"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:text="@string/btnClickMe"/>


2、在MainActivity.java文件中添加如下代码:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        findViewById(R.id.btnAiphaAnimation).setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				// 创建透明动画效果 ,透 明度是0~1
				AlphaAnimation alpha=new AlphaAnimation(0, 1);
				//设置动画时间 长度,单位毫秒
				alpha.setDuration(1000);
				//给按钮添加 动画效果 
				v.startAnimation(alpha);
			}
		});
    }

运行以后可看到效果:



如果将AlphaAnimation的动画效果 配置在XML文件中,使用起来会更加方便,新建Android XML文件:


XML文件代码:

<?xml version="1.0" encoding="utf-8"?>
<alpha  xmlns:android="http://schemas.android.com/apk/res/android" 
     android:fromAlpha="0"
     android:toAlpha="1"
     android:duration="5000">
</alpha>


然后在MainActivity.java文件中添加如下代码:
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        findViewById(R.id.btnAiphaAnimation).setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				// 创建透明动画效果 ,透 明度是0~1
				//AlphaAnimation alpha=new AlphaAnimation(0, 1);
				//设置动画时间 长度,单位毫秒
				//alpha.setDuration(1000);
				//给按钮添加 动画效果 
				//v.startAnimation(alpha);
				
				//使用XML文件配置Animation
				v.startAnimation(AnimationUtils.loadAnimation(v.getContext(), R.anim.alpha));
			}
		});
    }

运行程序,可看到如上同样效果,但使用起来更加方便。


原文地址:https://www.cnblogs.com/raphael5200/p/5114795.html