Java-Android 之动画的实现
一:显示隐藏动画
在res目录下创建一个anim目录,然后在里面创建一个alpha.xml文件
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" > <alpha android:fromAlpha="1.0" android:toAlpha="0" android:duration="5000" > </alpha> </set>
在显示的页面添加一张图片,然后在MainActivity.java文件,获得需要进行动画的对象,获得动画东西那个,将需要的对象添加动画的对象到动画的方法
package cn.szy.com; import android.app.Activity; import android.os.Bundle; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.widget.ImageView; public class MainActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Animation animation = AnimationUtils.loadAnimation(this, R.anim.alpha); animation.setFillAfter(true); ImageView imageview = (ImageView) this.findViewById(R.id.imageView1); imageview.startAnimation(animation); } }
二:移动动画
在res目录下创建一个anim目录,然后在里面创建一个translate.xml文件,然后在动画里面获取了之后加载进去就行了
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" > <translate android:fromXDelta="0" android:fromYDelta="0" android:toXDelta="100" android:toYDelta="100" android:duration="5000" > </translate> </set>
三:旋转动画
在res目录下创建一个anim目录,然后在里面创建一个rotate.xml文件,然后在动画里面获取了之后加载进去就行了
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" > <rotate android:fromDegrees="0" android:toDegrees="180" android:pivotX="50%" android:pivotY="50%" android:duration="5000" > </rotate> </set>
四:放大动画
在res目录下创建一个anim目录,然后在里面创建一个scale.xml文件,然后在动画里面获取了之后加载进去就行了
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" > <scale android:fromXScale="1.0" android:fromYScale="1.0" android:toXScale="5.0" android:toYScale="5.0" android:pivotX="50%" android:pivotY="50%" android:duration="5000" /> </set>
五:集合动画,将多个动画的动作写到一个文件中,会按顺序和时间进行调用,就能够实现一些复杂的动画
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" > <translate android:fromXDelta="0" android:fromYDelta="0" android:toXDelta="100" android:toYDelta="100" android:duration="5000" > </translate> <scale android:fromXScale="1.0" android:fromYScale="1.0" android:toXScale="5.0" android:toYScale="5.0" android:pivotX="50%" android:pivotY="50%" android:duration="5000" /> <alpha android:fromAlpha="1.0" android:toAlpha="0" android:duration="5000" /> </set>