(转)Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入
文章转自:http://blog.csdn.net/qq_30379689/article/details/52494270
Activity跳转动画、淡入淡出、滑入滑出、自定义退出进入
前言:
系统中有两个定义好的Activity跳转动画:fade_in、fade_out、slide_in_left、slide_out_right
其中运用到了插值器的知识点,这里也会简单的介绍插值器的几个功能
跳转动画用到的是Activity中的overridePendingTransition这个方法进行跳转
知识点介绍:
overridePendingTransition(int enterAnim,int exitAnim)参数1:进入时的动画、参数2:退出时的动画
注:这个方法必须放在startActivity和finish之后才能调用
常见的插值器:
LinearInterpolator:线性插值器,匀速运动;
AccelerateDecelerateInterpolator:加速减速插值器,动画两头慢中间快;
DecelerateInterpolator:减速插值器,动画越来越慢;
fade_in与fade_out:
public void in(View v) {
startActivity(new Intent(this, SecondActivity.class));
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
} public void out(View v) {
finish();
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}
slide_in_left与slide_out_right:
public void in(View v) {
startActivity(new Intent(this, SecondActivity.class));
overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
} public void out(View v) {
finish();
overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
}
聪明的你可能会想到,如果我们两个合起来,可以不?答案是可以的
public void in(View v) {
startActivity(new Intent(this, SecondActivity.class));
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
} public void out(View v) {
finish();
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
}
会思考的你可能会想到,可不可以我们自己来做一个我们的自己的动画呢?答案是可以的
在res文件下创建一个anim的文件夹,专门存放我们的动画xml文件
anim_in.xml与anim_out.xml:(zAdjustment="top"意思是强制将我们的执行动画Activity放在最上层)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator">
<scale android:fromXScale="2.0" android:toXScale="1.0"
android:fromYScale="2.0" android:toYScale="1.0"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator"
android:zAdjustment="top">
<scale android:fromXScale="1.0" android:toXScale=".5"
android:fromYScale="1.0" android:toYScale=".5"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
<alpha android:fromAlpha="1.0" android:toAlpha="0"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
public void in(View v) {
startActivity(new Intent(this, SecondActivity.class));
overridePendingTransition(R.anim.anim_in,R.anim.anim_out);
} public void out(View v) {
finish();
overridePendingTransition(R.anim.anim_in,R.anim.anim_out);
}
(转)Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入的更多相关文章
- Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入
Activity跳转动画.淡入淡出.滑入滑出.自定义退出进入 前言: 系统中有两个定义好的Activity跳转动画:fade_in.fade_out.slide_in_left.slide_out_r ...
- Android四大组件——Activity
Activity作为Android四大组件之一,也是其中最重要的一个组件.作为一个与用户交互的组件,我们可以把Activity比较成为windows系统上的一个文件夹窗口,是一个与用户交互的界面.再进 ...
- Android四大组件——Activity——Activity之间通信上
Activity之间的跳转有显式意图和隐式意图两种. 显式意图(显式Intent): //创建一个Intent对象,明确Intent跳转时的源Activity和目标Activity.参数一为当前Act ...
- Android 四大组件(Activity、Service、BroadCastReceiver、ContentProvider)
转载于:http://blog.csdn.net/byxdaz/article/details/9708491 http://blog.csdn.net/q876266464/article/deta ...
- Android四大组件——Activity——Activity的生命周期
Activity状态: 每个Activity在其生命周期中最多可能有四种状态 1.运行状态:处于栈顶时.初次创建处于栈顶时依次调用:onCreate(),onStart(),onResume().由不 ...
- Android四大组件——Activity——Activity数据回传
既然可以传递数据给下一个Activity,自然也可以返回数据给上一个Activity.返回上一个Activity时只需要点击back键就好,并没有一个用于启动Activity的Intent来传递数据, ...
- Android四大组件——Activity——Activity之间通信下
显式意图:一般是用于应用内组件跳转.(如从ActivityA跳转到ActivityB) 隐式意图:一半用于应用之间的跳转.(如从ActivityA跳转到拨号) 隐式意图跳转到百度: 只需将前面Main ...
- Android四大组件-Activity
http://android.tgbus.com/Android/androidnews/201204/419485.shtml
- 【原创】Android 从一个Activity跳转到另外一个Activity
Android四大组件activity使用,实现两个activity之间的跳转 基本流程:创建两个activity-将其中一个activity中组件作为事件源-通过组件事件的处理借助intent对象实 ...
随机推荐
- Visual Studio生成webservice代理类
首先点击 vs菜单栏->工具 ,选择 外部工具, 在弹出的窗口中点击 添加, 然后在“标题”行中输入"WSDL生成代理类", "命令"行中输入" ...
- 代码统计 (uustepcount)
代码统计软件(uustepcount)用于 记录自己的代码数量,包括空行,代码行数,注释行数,注释百分比,代码百分比,文件大小,文件日期等. 虽然也是 分析程序的源代码,统计空行,注释行,代码行,但u ...
- Xtrabackup的安装与使用
Xtrabackup的安装与使用 1. XtraBackup 简介 XtraBackup(PXB) 工具是 Percona 公司用 perl 语言开发的一个用于 MySQL 数据库物理热备的备份工具, ...
- Mysql 数据库操作之DDL、DML、DQL语句操作
Mysql 数据库操作之DDL.DML.DQL语句操作 设置数据库用户名密码 l Show databases 查看数据库列表信息 l 查看数据库中的数据表信息 ,格式: use 数据库名: sh ...
- 使用NPOI按照word模板文件生成新的word文件
/// <summary> /// 按照word模板文件 生成新word文件 /// </summary> /// <param name="tempFile& ...
- TensorFlow 安装报错的解决办法(安装1.5版本)
1.安装Anaconda 百度下载windows版本,一路点下一步,安装好了Anaconda,自带python3.6.6. 2.安装TensorFlow (1)打开Anaconda Prompt,输入 ...
- win10 64 + VS2010 + Opencv 2.4.9 + HIKVISION(海康)
海康相机型号:DS-2CD2512F-IS 参考连接http://blog.csdn.net/wanghuiqi2008/article/details/31404571 先上效果图 其中,在连接时遇 ...
- Android单元测试学习(一)
什么是单元测试 首先总结一下什么是单元测试,单元测试中的单元在Android或Java中可以理解为某个类中的某一个方法,因此单元测试就是针对Android或Java中某个类中的某一个方法中的逻辑代码进 ...
- leetcode142
public class Solution { public ListNode detectCycle( ListNode head ) { if( head == null || head.next ...
- 手写注解实现SpringMVC
参考:https://www.cnblogs.com/Shock-W/p/6617068.html