Android ViewFlipper的动画


首先熟悉四种动画

anim/push_up_in.xml。进入的动画

  1. <set xmlns:Android="http://schemas.android.com/apk/res/android">  
  2.     <translate android:fromYDelta="100%p" android:toYDelta="0" android:duration="300"/>  
  3.     <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />  
  4. </set>  

android:fromYDelta="100%p" android:toYDelta="0" 到达的view百分比
fromAlpha=“0.0” 透明度为0,1为不透明
anim/push_up_out.xml。退出的动画

  1. <set xmlns:android="http://schemas.android.com/apk/res/android">  
  2.     <translate android:fromYDelta="0" android:toYDelta="-100%p" android:duration="300"/>  
  3.     <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="300" />  
  4. </set>  

anim/push_left_in.xml。从右边进入

  1. <set xmlns:android="http://schemas.android.com/apk/res/android">  
  2.     <translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300"/>  
  3.     <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />  
  4. </set>  

anim/push_left_out.xml。从左边退出

  1. <set xmlns:android="http://schemas.android.com/apk/res/android">  
  2.     <translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="300"/>  
  3.     <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="300" />  
  4. </set>  

main.xml文件中添加ViewFlipper

  1. <ViewFlipper  
  2.         android:id="@+id/flipper"  
  3.         android:layout_width="match_parent"  
  4.         android:layout_height="wrap_content"  
  5.         android:layout_marginBottom="20dip"  
  6.         android:flipInterval="2000" >  
  7.   
  8.         <TextView  
  9.             android:layout_width="match_parent"  
  10.             android:layout_height="wrap_content"  
  11.             android:gravity="center_horizontal"  
  12.             android:text="@string/animation_2_text_1"  
  13.             android:textSize="26sp" />  
  14.   
  15.         <TextView  
  16.             android:layout_width="match_parent"  
  17.             android:layout_height="wrap_content"  
  18.             android:gravity="center_horizontal"  
  19.             android:text="@string/animation_2_text_2"  
  20.             android:textSize="26sp" />  
  21.   
  22.         <TextView  
  23.             android:layout_width="match_parent"  
  24.             android:layout_height="wrap_content"  
  25.             android:gravity="center_horizontal"  
  26.             android:text="@string/animation_2_text_3"  
  27.             android:textSize="26sp" />  
  28.   
  29.         <TextView  
  30.             android:layout_width="match_parent"  
  31.             android:layout_height="wrap_content"  
  32.             android:gravity="center_horizontal"  
  33.             android:text="@string/animation_2_text_4"  
  34.             android:textSize="26sp" />  
  35.     </ViewFlipper>  

//设置进入的动画
mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
                    R.anim.push_up_in));
// 设置退出的动画
mFlipper.setOutAnimation(AnimationUtils.loadAnimation(this,
                    R.anim.push_up_out));

//启动动画

mFlipper.startFlipping();

同时android.R.anim中也有几个动画slide_in_left.xml从左边进入,slide_out_right.xml

相关内容