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跳转动画、淡出淡入、滑出滑入、自定义退出进入的更多相关文章

  1. (转)Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入

    文章转自:http://blog.csdn.net/qq_30379689/article/details/52494270 Activity跳转动画.淡入淡出.滑入滑出.自定义退出进入 前言: 系统 ...

  2. Android四大组件——Activity

    Activity作为Android四大组件之一,也是其中最重要的一个组件.作为一个与用户交互的组件,我们可以把Activity比较成为windows系统上的一个文件夹窗口,是一个与用户交互的界面.再进 ...

  3. Android四大组件——Activity——Activity之间通信上

    Activity之间的跳转有显式意图和隐式意图两种. 显式意图(显式Intent): //创建一个Intent对象,明确Intent跳转时的源Activity和目标Activity.参数一为当前Act ...

  4. Android 四大组件(Activity、Service、BroadCastReceiver、ContentProvider)

    转载于:http://blog.csdn.net/byxdaz/article/details/9708491 http://blog.csdn.net/q876266464/article/deta ...

  5. Android四大组件——Activity——Activity的生命周期

    Activity状态: 每个Activity在其生命周期中最多可能有四种状态 1.运行状态:处于栈顶时.初次创建处于栈顶时依次调用:onCreate(),onStart(),onResume().由不 ...

  6. Android四大组件——Activity——Activity数据回传

    既然可以传递数据给下一个Activity,自然也可以返回数据给上一个Activity.返回上一个Activity时只需要点击back键就好,并没有一个用于启动Activity的Intent来传递数据, ...

  7. Android四大组件——Activity——Activity之间通信下

    显式意图:一般是用于应用内组件跳转.(如从ActivityA跳转到ActivityB) 隐式意图:一半用于应用之间的跳转.(如从ActivityA跳转到拨号) 隐式意图跳转到百度: 只需将前面Main ...

  8. Android四大组件-Activity

    http://android.tgbus.com/Android/androidnews/201204/419485.shtml

  9. 【原创】Android 从一个Activity跳转到另外一个Activity

    Android四大组件activity使用,实现两个activity之间的跳转 基本流程:创建两个activity-将其中一个activity中组件作为事件源-通过组件事件的处理借助intent对象实 ...

随机推荐

  1. Python input() 函数

    Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型. Python2.x 中 input() 相等于 eval(raw_input(prompt)) ,用来获 ...

  2. CNN是怎样一步步工作的?

    非常形象详细的博客:链接1 链接2 为了完成我们的卷积,我们不断地重复着上述过程,将feature和图中每一块进行卷积操作.最后通过每一个feature的卷积操作,我们会得到一个新的二维数组.这也可以 ...

  3. 小学四则运算口算练习app---No.1

    因为对app不是很了解,对环境的配置也不是很舒心,今天主要配置了环境,了解了一些相关app的简单操作以及安卓stdiuo的使用!如下: 我自己连接的自己的手机(还是不要拿自己的手机做测试哦!模拟器虽然 ...

  4. java spring框架的定时任务

    由于测试的原因,最近有接触java spring  @Scheduled的定时任务,当时还以为配置起来表达式和crontab是完全一样的,没想到还有些许不一样. 在spring中,一个cron表达式至 ...

  5. [PHP] 一个免费、开源的基于tp5+layui2.1.5开发的快速开发框架

    推荐 一个免费.开源的基于tp5+layui2.1.5开发的快速开发框架,既可以用来学习,也可以用来实际项目的快速开发: 码云下载:https://gitee.com/eduaskcms/eduask ...

  6. virtualbox安装问题总结

    还是老问题 重点重点: https://blog.csdn.net/Loisleen/article/details/84975165#1install_the_gcc_make_perl_packa ...

  7. git强制推送命令

    git push -f origin master 注释: origin远程仓库名,master分支名,-f为force,意为:强行.强制. 这行命令的意思就是强制用本地的代码去覆盖掉远程仓库的代码, ...

  8. C# 激活主窗口

    今天同学跟我说了一个bug,虽然很简单,但还是记录一下,也好让我养成写东西的习惯. C# windows form 程序中,发生某个事件时,需要自动弹出一个窗口,提示用户,并等待用户输入进行处理. 如 ...

  9. [转帖]Hikari 数据源介绍

    Hikari 数据源介绍 jimmy・2018 年 09 月 23 日・默认分类 预估 https://izhong.me/index.php/archives/78/ 介绍 官网地址: https: ...

  10. xshell怎么配置鼠标颜色

    在控制面板--> 鼠标属性 --> 指针 --> 文本选择 --> 浏览 --> beam_r.cur --> 打开 --> 应用 --> 确定