Android Activity Theme.Dialog 动画

来源:互联网 发布:智业软件ipo 编辑:程序博客网 时间:2024/06/07 02:54

动画XML文件

  1. slide_right_in.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set
  3. xmlns:android="http://schemas.android.com/apk/res/android">
  4. <translate android:duration="300" android:fromXDelta="100.0%p" android:toXDelta="0.0" />
  5. </set>
  1. slide_left_out.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set
  3. xmlns:android="http://schemas.android.com/apk/res/android">
  4. <translate android:duration="300" android:fromXDelta="0.0" android:toXDelta="-100.0%p" />
  5. </set>
  1. slide_left_in.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set
  3. xmlns:android="http://schemas.android.com/apk/res/android">
  4. <translate android:duration="300" android:fromXDelta="-100.0%p" android:toXDelta="0.0" />
  5. </set>
  1. slide_right_out.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set
  3. xmlns:android="http://schemas.android.com/apk/res/android">
  4. <translate android:duration="300" android:fromXDelta="0.0" android:toXDelta="100.0%p" />
  5. </set>
  1. bottom_in.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <translate android:fromYDelta="100%p" android:toYDelta="0" android:duration="350"/>
  4. </set>
  1. bottom_out.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <translate
  4. android:fromYDelta="0"
  5. android:toYDelta="100%p"
  6. android:duration="350"
  7. />
  8. </set>

使用动画

styles.xml

  1. <resources>
  2.  
  3. <!-- Base application theme. -->
  4. <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
  5.  
  6. <!-- 设置activity切换动画 -->
  7. <item name="android:windowAnimationStyle">@style/activityAnimation</item>
  8. </style>
  9.  
  10. <!-- animation 样式 -->
  11. <style name="activityAnimation" parent="@android:style/Animation.Activity">
  12. <!--当我们从 A1 启动 A2 时,A2 出现在屏幕上,这个动画叫做 android:activityOpenEnterAnimation-->
  13. <item name="android:activityOpenEnterAnimation">@anim/slide_right_in</item>
  14. <!--当我们从 A1 启动 A2 时,A1 从屏幕上消失,这个动画叫做 android:activityOpenExitAnimation-->
  15. <item name="android:activityOpenExitAnimation">@anim/slide_left_out</item>
  16. <!--当我们从 A2 退出回到 A1 时,A1 出现在屏幕上,这个叫做 android:activityCloseEnterAnimation-->
  17. <item name="android:activityCloseEnterAnimation">@anim/slide_left_in</item>
  18. <!--当我们从 A2 退出回到 A1 时,A2 从屏幕上消失,这个叫做 android:activityCloseExitAnimation-->
  19. <item name="android:activityCloseExitAnimation">@anim/slide_right_out</item>
  20. </style>
  21.  
  22. </resources>

启动 Activity A中

  1. Intent intent = new Intent();
  2. intent.setClassName(cxt,"com.test.DemoActivity");//打开一个activity
  3. cxt.startActivity(intent);
  4.  
  5. cxt.overridePendingTransition(R.anim.bottom_in,0);

退出 Activity B中

  1. @Override
  2. public void finish() {
  3. super.finish();
  4. overridePendingTransition(0, R.anim.bottom_out);
  5. }



0 0
原创粉丝点击