Activity跳转时动画,是在跳转Activity,或者在Activity结束返回 等,用到的进入效果;

第一种效果展示:

第一个Activity的代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.view.View;
  7.  
  8. import liudeli.activity.R;
  9.  
  10. public class MyActivity01 extends Activity {
  11.  
  12. @Override
  13. protected void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_my01);
  16. }
  17.  
  18. /**
  19. * 启动另外一个Activity
  20. * @param view
  21. */
  22. public void startNewActivity(View view) {
  23. startActivity(new Intent(this, MyActivity02.class));
  24. /**
  25. * 参数一:新的Activity MyActivity02 进入时的动画...
  26. * 参数二:当前自己的Activity 动起来的动画
  27. */
  28. overridePendingTransition(R.anim.activity_open,0);
  29. }
  30. }
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout
  3. xmlns:android="http://schemas.android.com/apk/res/android"
  4. android:orientation="vertical"
  5. android:layout_width="match_parent"
  6. android:layout_height="match_parent">
  7.  
  8. <Button
  9. android:layout_width="wrap_content"
  10. android:layout_height="wrap_content"
  11. android:text="启动另外一个Activity"
  12. android:onClick="startNewActivity"
  13. />
  14.  
  15. <TextView
  16. android:layout_width="wrap_content"
  17. android:layout_height="wrap_content"
  18. android:text="第一个Activity"
  19. android:layout_centerInParent="true"
  20. android:textSize="22dp"
  21. />
  22.  
  23. </RelativeLayout>

第二个Activity代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.View;
  6.  
  7. import liudeli.activity.R;
  8.  
  9. public class MyActivity02 extends Activity {
  10.  
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_my02);
  15. }
  16.  
  17. /**
  18. * 结束自己
  19. * @param view
  20. */
  21. public void exitThisActivity(View view) {
  22. finish();
  23. }
  24.  
  25. @Override
  26. public void finish() {
  27. super.finish();
  28.  
  29. /**
  30. * 参数一:新的Activity MyActivity02 进入时的动画...
  31. * 参数二:当前自己的Activity 动起来的动画
  32. */
  33. overridePendingTransition(R.anim.activity_open, R.anim.activity_close);
  34. }
  35. }
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout
  3. xmlns:android="http://schemas.android.com/apk/res/android"
  4. android:orientation="vertical"
  5. android:layout_width="match_parent"
  6. android:layout_height="match_parent"
  7. android:background="#00f000">
  8.  
  9. <Button
  10. android:layout_width="wrap_content"
  11. android:layout_height="wrap_content"
  12. android:text="结束自己"
  13. android:onClick="exitThisActivity"
  14. />
  15.  
  16. <TextView
  17. android:layout_width="wrap_content"
  18. android:layout_height="wrap_content"
  19. android:text="第二个Activity"
  20. android:layout_centerInParent="true"
  21. android:textSize="22dp"
  22. />
  23.  
  24. </RelativeLayout>

R.anim.activity_open.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <translate
  4. android:fromXDelta="-100%p"
  5. android:toXDelta="0"
  6. android:duration="1500"
  7. />
  8. </set>

R.anim.activity_close.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <translate
  4. android:fromXDelta="0"
  5. android:toXDelta="100%p"
  6. android:duration="1500"
  7. />
  8. </set>

第二种效果展示:

第一个Activity代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.view.View;
  7.  
  8. import liudeli.activity.R;
  9.  
  10. public class MyActivity01 extends Activity {
  11.  
  12. @Override
  13. protected void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_my01);
  16. }
  17.  
  18. /**
  19. * 启动另外一个Activity
  20. * @param view
  21. */
  22. public void startNewActivity(View view) {
  23. startActivity(new Intent(this, MyActivity02.class));
  24. /**
  25. * 参数一:新的Activity MyActivity02 进入时的动画...
  26. * 参数二:当前自己的Activity 动起来的动画
  27. */
  28. overridePendingTransition(R.anim.activity_open02,R.anim.activity_close02);
  29. }
  30. }

第二个Activity代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.View;
  6.  
  7. import liudeli.activity.R;
  8.  
  9. public class MyActivity02 extends Activity {
  10.  
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_my02);
  15. }
  16.  
  17. /**
  18. * 结束自己
  19. * @param view
  20. */
  21. public void exitThisActivity(View view) {
  22. finish();
  23. }
  24.  
  25. @Override
  26. public void finish() {
  27. super.finish();
  28.  
  29. /**
  30. * 参数一:新的Activity MyActivity02 进入时的动画...
  31. * 参数二:当前自己的Activity 动起来的动画
  32. */
  33. overridePendingTransition(R.anim.activity_open02, R.anim.activity_close02);
  34. }
  35. }

R.anim.activity_open02.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <translate android:fromYDelta="-100%p"
  5. android:toYDelta="0"
  6. android:duration="2500"
  7. />
  8. </set>

R.anim.activity_close02.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <translate android:fromYDelta="0"
  5. android:toYDelta="100%p"
  6. android:duration="2500"
  7. />
  8. </set>

第三种效果展示:

第一个Activity的代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.view.View;
  7.  
  8. import liudeli.activity.R;
  9.  
  10. public class MyActivity01 extends Activity {
  11.  
  12. @Override
  13. protected void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_my01);
  16. }
  17.  
  18. /**
  19. * 启动另外一个Activity
  20. * @param view
  21. */
  22. public void startNewActivity(View view) {
  23. startActivity(new Intent(this, MyActivity02.class));
  24. /**
  25. * 参数一:新的Activity MyActivity02 进入时的动画...
  26. * 参数二:当前自己的Activity 动起来的动画
  27. */
  28. overridePendingTransition(R.anim.activity_open02, 0);
  29. }
  30. }

第二个Activity的代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.View;
  6.  
  7. import liudeli.activity.R;
  8.  
  9. public class MyActivity02 extends Activity {
  10.  
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_my02);
  15. }
  16.  
  17. /**
  18. * 结束自己
  19. * @param view
  20. */
  21. public void exitThisActivity(View view) {
  22. finish();
  23. }
  24.  
  25. @Override
  26. public void finish() {
  27. super.finish();
  28.  
  29. /**
  30. * 参数一:新的Activity MyActivity02 进入时的动画...
  31. * 参数二:当前自己的Activity 动起来的动画
  32. */
  33. overridePendingTransition(R.anim.activity_open03, 0);
  34. }
  35. }

R.anim.activity_open02.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <translate android:fromYDelta="-100%p"
  5. android:toYDelta="0"
  6. android:duration="2500"
  7. />
  8.  
  9. </set>

R.anim.activity_open03.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <translate android:fromYDelta="100%p"
  5. android:toYDelta="0"
  6. android:duration="2500"
  7. />
  8.  
  9. </set>

第四种效果展示:

第一个Activity的代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.view.View;
  7.  
  8. import liudeli.activity.R;
  9.  
  10. public class MyActivity01 extends Activity {
  11.  
  12. @Override
  13. protected void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_my01);
  16. }
  17.  
  18. /**
  19. * 启动另外一个Activity
  20. * @param view
  21. */
  22. public void startNewActivity(View view) {
  23. startActivity(new Intent(this, MyActivity02.class));
  24. /**
  25. * 参数一:新的Activity MyActivity02 进入时的动画...
  26. * 参数二:当前自己的Activity 动起来的动画
  27. */
  28. overridePendingTransition(R.anim.activity_open_anim, 0);
  29. }
  30. }

第二个Activity的代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.View;
  6.  
  7. import liudeli.activity.R;
  8.  
  9. public class MyActivity02 extends Activity {
  10.  
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_my02);
  15. }
  16.  
  17. /**
  18. * 结束自己
  19. * @param view
  20. */
  21. public void exitThisActivity(View view) {
  22. finish();
  23. }
  24.  
  25. @Override
  26. public void finish() {
  27. super.finish();
  28.  
  29. /**
  30. * 参数一:新的Activity MyActivity02 进入时的动画...
  31. * 参数二:当前自己的Activity 动起来的动画
  32. */
  33. overridePendingTransition(R.anim.activity_open_anim, 0);
  34. }
  35. }

R.anim.activity_open_anim.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <alpha android:fromAlpha="0"
  5. android:toAlpha="1"
  6. android:duration="3600"/>
  7.  
  8. </set>

第五种效果展示:

第一个Activity代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.view.View;
  7.  
  8. import liudeli.activity.R;
  9.  
  10. public class MyActivity01 extends Activity {
  11.  
  12. @Override
  13. protected void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_my01);
  16. }
  17.  
  18. /**
  19. * 启动另外一个Activity
  20. * @param view
  21. */
  22. public void startNewActivity(View view) {
  23. startActivity(new Intent(this, MyActivity02.class));
  24. /**
  25. * 参数一:新的Activity MyActivity02 进入时的动画...
  26. * 参数二:当前自己的Activity 动起来的动画
  27. */
  28. overridePendingTransition(R.anim.activity_open_anim02, R.anim.activity_close_anim02);
  29. }
  30. }

第二个Activity代码:

  1. package liudeli.activity.activity_anim;
  2.  
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.View;
  6.  
  7. import liudeli.activity.R;
  8.  
  9. public class MyActivity02 extends Activity {
  10.  
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_my02);
  15. }
  16.  
  17. /**
  18. * 结束自己
  19. * @param view
  20. */
  21. public void exitThisActivity(View view) {
  22. finish();
  23. }
  24.  
  25. @Override
  26. public void finish() {
  27. super.finish();
  28.  
  29. /**
  30. * 参数一:新的Activity MyActivity02 进入时的动画...
  31. * 参数二:当前自己的Activity 动起来的动画
  32. */
  33. overridePendingTransition(R.anim.activity_open_anim02, R.anim.activity_close_anim02);
  34. }
  35. }
  1. R.anim.activity_open_anim02
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <rotate android:fromDegrees="180"
  5. android:toDegrees="0"
  6. android:duration="2000"
  7. />
  8.  
  9. </set>
  1. R.anim.activity_close_anim02
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3.  
  4. <rotate android:fromDegrees="0"
  5. android:toDegrees="-180"
  6. android:duration="2000"
  7. />
  8.  
  9. </set>

Android-Activity跳转时动画的更多相关文章

  1. Activity跳转时传递Bitmap对象的实现

    前言 相信大家可能都了解Activity跳转时我们是能够传递參数的,比方使用Intent传递或者Bundle来传递,把当前Activity的一些信息传递给将要跳转到的新的Activity.可是不知道大 ...

  2. Android Activity跳转动画,让你的APP瞬间绚丽起来

    我们都知道绚丽的APP总会给用户耳目一新的感觉,为了抓住用户更大网络公司使出浑身解数让自己的产品更绚丽,而绚丽最简单的效果就是Activity跳转效果,不仅可以让用户看起来舒服,而且实现起来也特别简单 ...

  3. android activity 跳转传值问题研究

    intent = new Intent(); intent.setClass(LoginActivity.this, RegActivity.class); startActivity(intent) ...

  4. Android——Activity跳转

    Activity_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayou ...

  5. [Android]Activity跳转传递任意类型的数据、Activity为SingleTask时代替StartActivityForResult的解决方案

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4389674.html 需求:在ActivityA跳转到Acti ...

  6. Android Activity之间经典切换动画

    package com.iteye.androidtoast; import java.util.ArrayList; import java.util.List; import android.ap ...

  7. Android Activity界面切换添加动画特效(转)

    在Android 2.0之后有了overridePendingTransition() ,其中里面两个参数,一个是前一个activity的退出两一个activity的进入, @Override pub ...

  8. Android Activity界面切换添加动画特效

    在Android 2.0之后有了overridePendingTransition() ,其中里面两个参数,一个是前一个activity的退出两一个activity的进入, @Override pub ...

  9. Android activity跳转方式

    方法一:通过SetContentView切换Layout来实现界面的切换,这种方法相当于重绘Activity. protected void onCreate(Bundle savedInstance ...

随机推荐

  1. Hibernate中一级缓存和二级缓存

    缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能.缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事 ...

  2. html标签的总结-重复

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  3. JAVA 框架 Spring Cache For Redis.

    一.概述 缓存(Caching)可以存储经常会用到的信息,这样每次需要的时候,这些信息都是立即可用的. 常用的缓存数据库: Redis   使用内存存储(in-memory)的非关系数据库,字符串.列 ...

  4. iOS 多页面跳转同一页面时数据处理

    如果 同一个界面, 会有10个数据源传进来, 此时 创建 一个总模型fullmodel 存储 10个model 数据, 创建 10个一样的cell, 在 不同数据, 用不同cell处理最好, 千万别于 ...

  5. volatile是否就是原子性/线程同步的

    在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉. Java语言是支持多线程的,为了解决线程并发的问题,在语 ...

  6. MQ基础概念和介绍

    一.中间件 MQ是一种中间件产品,至于什么是中间件,中间件能干什么,参见以下链接: http://baike.baidu.com/view/23710.htm 二.WebSphere MQ的原理 We ...

  7. discuz回贴通知插件实现-页面嵌入点(钩子)

    1.如何保证主题被回复时业务代码被执行. 2.获得主题,主题发布者,贴子等信息. 3.discuz发送email邮件.   discuz使用嵌入点(钩子)来处理代码的执行时机. 当用户开启插件开发者模 ...

  8. css水波动画效果

    代码来源:http://www.jq22.com/code1526 HTML: <div class="waves"></div> css: html, b ...

  9. maven的pom.xml样例

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  10. 《Ubuntu标准教程》学习总结

    第6章 Shell Shell就是一个命令解释器,负责完成用户与内核之间的交互. 目前流行电Shell主要有:Bourne Shell( sh ).Bourne Again Shell( Bash ) ...