Android-Activity跳转时动画
Activity跳转时动画,是在跳转Activity,或者在Activity结束返回 等,用到的进入效果;
第一种效果展示:

第一个Activity的代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity01 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my01);
} /**
* 启动另外一个Activity
* @param view
*/
public void startNewActivity(View view) {
startActivity(new Intent(this, MyActivity02.class));
/**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open,0);
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"> <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="启动另外一个Activity"
android:onClick="startNewActivity"
/> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第一个Activity"
android:layout_centerInParent="true"
android:textSize="22dp"
/> </RelativeLayout>
第二个Activity代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity02 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my02);
} /**
* 结束自己
* @param view
*/
public void exitThisActivity(View view) {
finish();
} @Override
public void finish() {
super.finish(); /**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open, R.anim.activity_close);
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00f000"> <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="结束自己"
android:onClick="exitThisActivity"
/> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第二个Activity"
android:layout_centerInParent="true"
android:textSize="22dp"
/> </RelativeLayout>

R.anim.activity_open.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="-100%p"
android:toXDelta="0"
android:duration="1500"
/>
</set>
R.anim.activity_close.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0"
android:toXDelta="100%p"
android:duration="1500"
/>
</set>
第二种效果展示:

第一个Activity代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity01 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my01);
} /**
* 启动另外一个Activity
* @param view
*/
public void startNewActivity(View view) {
startActivity(new Intent(this, MyActivity02.class));
/**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open02,R.anim.activity_close02);
}
}
第二个Activity代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity02 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my02);
} /**
* 结束自己
* @param view
*/
public void exitThisActivity(View view) {
finish();
} @Override
public void finish() {
super.finish(); /**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open02, R.anim.activity_close02);
}
}
R.anim.activity_open02.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromYDelta="-100%p"
android:toYDelta="0"
android:duration="2500"
/>
</set>
R.anim.activity_close02.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromYDelta="0"
android:toYDelta="100%p"
android:duration="2500"
/>
</set>
第三种效果展示:

第一个Activity的代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity01 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my01);
} /**
* 启动另外一个Activity
* @param view
*/
public void startNewActivity(View view) {
startActivity(new Intent(this, MyActivity02.class));
/**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open02, 0);
}
}
第二个Activity的代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity02 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my02);
} /**
* 结束自己
* @param view
*/
public void exitThisActivity(View view) {
finish();
} @Override
public void finish() {
super.finish(); /**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open03, 0);
}
}
R.anim.activity_open02.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromYDelta="-100%p"
android:toYDelta="0"
android:duration="2500"
/> </set>
R.anim.activity_open03.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromYDelta="100%p"
android:toYDelta="0"
android:duration="2500"
/> </set>
第四种效果展示:

第一个Activity的代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity01 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my01);
} /**
* 启动另外一个Activity
* @param view
*/
public void startNewActivity(View view) {
startActivity(new Intent(this, MyActivity02.class));
/**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open_anim, 0);
}
}
第二个Activity的代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity02 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my02);
} /**
* 结束自己
* @param view
*/
public void exitThisActivity(View view) {
finish();
} @Override
public void finish() {
super.finish(); /**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open_anim, 0);
}
}
R.anim.activity_open_anim.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:fromAlpha="0"
android:toAlpha="1"
android:duration="3600"/> </set>
第五种效果展示:

第一个Activity代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity01 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my01);
} /**
* 启动另外一个Activity
* @param view
*/
public void startNewActivity(View view) {
startActivity(new Intent(this, MyActivity02.class));
/**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open_anim02, R.anim.activity_close_anim02);
}
}
第二个Activity代码:
package liudeli.activity.activity_anim; import android.app.Activity;
import android.os.Bundle;
import android.view.View; import liudeli.activity.R; public class MyActivity02 extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my02);
} /**
* 结束自己
* @param view
*/
public void exitThisActivity(View view) {
finish();
} @Override
public void finish() {
super.finish(); /**
* 参数一:新的Activity MyActivity02 进入时的动画...
* 参数二:当前自己的Activity 动起来的动画
*/
overridePendingTransition(R.anim.activity_open_anim02, R.anim.activity_close_anim02);
}
}
R.anim.activity_open_anim02
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <rotate android:fromDegrees="180"
android:toDegrees="0"
android:duration="2000"
/> </set>
R.anim.activity_close_anim02
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"> <rotate android:fromDegrees="0"
android:toDegrees="-180"
android:duration="2000"
/> </set>
Android-Activity跳转时动画的更多相关文章
- Activity跳转时传递Bitmap对象的实现
前言 相信大家可能都了解Activity跳转时我们是能够传递參数的,比方使用Intent传递或者Bundle来传递,把当前Activity的一些信息传递给将要跳转到的新的Activity.可是不知道大 ...
- Android Activity跳转动画,让你的APP瞬间绚丽起来
我们都知道绚丽的APP总会给用户耳目一新的感觉,为了抓住用户更大网络公司使出浑身解数让自己的产品更绚丽,而绚丽最简单的效果就是Activity跳转效果,不仅可以让用户看起来舒服,而且实现起来也特别简单 ...
- android activity 跳转传值问题研究
intent = new Intent(); intent.setClass(LoginActivity.this, RegActivity.class); startActivity(intent) ...
- Android——Activity跳转
Activity_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayou ...
- [Android]Activity跳转传递任意类型的数据、Activity为SingleTask时代替StartActivityForResult的解决方案
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4389674.html 需求:在ActivityA跳转到Acti ...
- Android Activity之间经典切换动画
package com.iteye.androidtoast; import java.util.ArrayList; import java.util.List; import android.ap ...
- Android Activity界面切换添加动画特效(转)
在Android 2.0之后有了overridePendingTransition() ,其中里面两个参数,一个是前一个activity的退出两一个activity的进入, @Override pub ...
- Android Activity界面切换添加动画特效
在Android 2.0之后有了overridePendingTransition() ,其中里面两个参数,一个是前一个activity的退出两一个activity的进入, @Override pub ...
- Android activity跳转方式
方法一:通过SetContentView切换Layout来实现界面的切换,这种方法相当于重绘Activity. protected void onCreate(Bundle savedInstance ...
随机推荐
- Containerpilot 配置文件 之 Watches
watch是在consul进行监视的服务配置. watch轮询服务的状态,并在服务变得健康,变得不健康或者实例数量发生变化时发出事件. 请注意,watch不包括行为; watch只发出事件,以便job ...
- 执行js,通过js显示隐藏的输入框,或者给input赋值
在测试过程中,有些输入框是隐藏的,如果直接对他进行赋值,会找不到这个输入框,从而导致脚本运行失败. 例如下面的这个密码输入框: 登录密码输入框分为两个input,下面的是提示的,上面的才是真正存下来的 ...
- luoguP3366 [模板] 最小生成树
题目链接:https://www.luogu.org/problemnew/show/P3366 思路: 求最小生成树的模板题,求MST有两种算法——Prim.Kruskal. 两者区别:Prim在稠 ...
- C/C++ 宏
0. #define MALLOC(n, type) \ ( (type *) malloc((n)* sizeof(type))) 1. 宏可以像函数一样被定义,例如: #define min ...
- Microsoft SQL Server, 错误:4064的解决方法 (转载)
SQL SERVER – Fix : Error: 4064 – Cannot open user default database. Login failed. Login failed for u ...
- spring开发Eclipse需要做设置
1. 统一工作空间的编码,选择UTF-8 2. 把创建JSP页面的编码修改UTF-8 3. 重新配置Tomcat服务器 * 先配置Tomcat服务器 * 选择服务器 --> open --> ...
- jq给动态生成的标签绑定事件的几种方法
经常遇到给动态生成的标签绑定事件不好用,自己简单测试总结了下,结论如下了: body> <!-- 下面是用纯动态方式生成标签 --> <div id="d2" ...
- window安装设置
https://jingyan.baidu.com/article/73c3ce28ed7d92e50243d96c.html
- dotnet core 发布环境变量配置 dev/stage/prod
https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/environments?view=aspnetcore-2.2 https://d ...
- jquery ui中的dialog,官网上经典的例子
jquery ui中的dialog,官网上经典的例子 jquery ui中dialog和easy ui中的dialog很像,但是最近用到的时候全然没有印象,一段时间不用就忘记了,这篇随笔介绍一下这 ...