Android Activity切换动画详解及实例
Android Activity切换动画
Android Activity切换动画是指从Activity A 跳转至Activity B的时候,Activity A 有退出动画,Activity B 有进入动画。这个动画的实现很简单,在startActivity(intent)之后调overridePendingTransition ()这个方法就行。比如实现淡入淡出的效果如下:
Intent i = new Intent(ActivityA.this,ActivityB.class); StartActivity.this.startActivity(i); overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
不过有时候overridePendingTransition 这个函数会不起作用,总结下,大概是以下三个方面的原因:
1、android系统版本2.0以下,这个没办法,想其他办法解决切换动画吧。
2、在ActivityGroup等的嵌入式Activity中,这个比较容易解决,用如下方法就可以了:
this.getParent().overridePendingTransition
3、在一个Activity的内部类中,或者匿名类中,这时候只好用handler来解决了。
我这里用到的是后退时的切换效果,即什么都没做的情况下:
代码如下,很简单:
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.back:
this.finish();
overridePendingTransition(0, R.anim.push_up_out);
break;
default:
break;
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
android中实现完全退出程序方法(退出所有activity)
这是一个很多很多人都 会遇到的问题,我也试过了很多方法,都不怎么好用. 比如: 复制代码 代码如下: System.exit(0); 不行. 还有什么跳转到第一个activity,同时把栈顶的activity全部清除,最后再finish();还是不行..不知道为什么. 这里是我自己的一个方法,效果非常好. 原理:在每个activity都注册一个广播接收器,用来接收关闭activity的广播.当需要退出程序的时候就发送一条关闭activity的广播,这样所有的activity都会接收到,然后所有a
-
Android仿微信滑动退出Activity
效果图: 原理: 原理一句话就能描述清楚.重写Activity的dispatchTouchEvent,滑动的时候拿到Activity栈中栈顶Activity的上一个Acticity的ContentView添加到栈顶Activity的DecorView中,滑动的过程中做视图平移,滑动结束之后把前面拿过来用的ContentView归还给上一个Activity,然后finish当前Activity. ActivityStack: 实现 Application.ActivityLifecycleCall
-
Android一次性退出多个Activity的方法
本文实例讲述了Android一次性退出多个Activity的方法.分享给大家供大家参考,具体如下: 因为android的API中没有提供一次性退出的接口所以想要在多activity的程序里面一次性退出的话就要费点功夫了.我是在一个单例对象里面记录activity栈中activity的引用然后在需要退出时遍历一遍finish()掉就可以了.实现步骤如下: 1.创建一个单例对象 package com.exit; import java.lang.ref.SoftReference; import
-
Android 中 退出多个activity的经典方法
1.使用List集合方式 用list保存activity实例,然后逐一干掉 import java.util.LinkedList; import java.util.List; import android.app.Activity; import android.app.AlertDialog; import android.app.Application; import android.content.DialogInterface; import android.content.Inte
-
Android Activity进出动画三种方法
Android Activity进出动画三种方法 实现activity的进出场动画总共有3种方式,下面会一一列出,首先给出示例的动画xml文件. 动画的xml文件 <?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromYDelta="
-
Android实现Activity界面切换添加动画特效的方法
本文以实例形式展示了Android实现Activity界面切换添加动画特效的方法,对于Android程序设计人员来说有很好的参考借鉴价值.具体方法如下: 了解Android程序设计的人应该知道,在Android 2.0之后有了overridePendingTransition(),其中里面两个参数,一个是前一个activity的退出,另一个activity的进入. 现看看下面这段示例代码: @Override public void onCreate(Bundle savedInstanceSt
-
Android的Activity跳转动画各种效果整理
大家使用Android的原生UI都知道,Android的Activity跳转就是很生硬的切换界面.其实Android的Activity跳转可以设置各种动画.下面给大家看看效果: 实现非常简单,用overridePendingtransition(int inId, int outId)即可实现.inId是下一界面进入效果的xml文件的id,outId是当前界面退出效果的xml文件id. 效果是用xml文件写的,首先要在res文件夹下建立anim文件夹,然后把动画效果xml文件放到里面去. 下面
-
退出Android程序时清除所有activity的实现方法
本文实例讲述了退出Android程序时清除所有activity的方法.分享给大家供大家参考,具体如下: 在一个项目中,要退出android程序,试了restartPackage. killBackgroundProcesses .通过异常并在Application的子类中重新注册Thread的 Thread.UncaughtExceptionHandler接口+异常方式,等等,都没有效果. 最后发现其实只要在从一个activity A 跳到另一个activity B 时,调用了A的finish方
-
Android使用Theme自定义Activity进入退出动画的方法
本文实例讲述了Android使用Theme自定义Activity进入退出动画的方法.分享给大家供大家参考,具体如下: 有没有觉得Activity的默认动画太快了或者太难看了.. 我原来使用Activity.overridePendingTransition来自定义Activity的进入动画,却发现没法定义退出的动画.结果就发现了强大的Theme和Style,之后还需要好好研究一下. 具体是这样子的: 在AndroidManifest里面,对于application和activity标签可以定义t
-
Android Activity跳转动画效果
Activity的跳转动画在5.0的时候做了一个重大的突破,下面来看一下吧 1.5.0之前的overridePendingTransition 相信大家对OverridePendingTransition还是很熟悉的,使用方法也是很简单就是 //fade_in是第二个界面的进入动画,fade_out是第一个界面退出动画,不想动画传入0 overridePendingTransition(R.anim.fade_in,R.anim.fade_out); fade_in : <?xml versi
-
Android编程设定activity进入和退出效果的方法
本文实例讲述了Android编程设定activity进入和退出效果的方法.分享给大家供大家参考,具体如下: 看了android的源代码和资源文件,终于明白如何去修改设置Dialog和Activity的进入和退出效果了.设置Dialog首先通过getWindow()方法获取它的窗口,然后通过getAttributes()方法获得window的WindowManager.LayoutParams lp, lp有个公共属性windowAnimations, 只要把要实现的animation的id赋值给
随机推荐
- AngularJS控制器controller给模型数据赋初始值的方法
- Perl的Mail::POP3Client模块和Gmail通信实例
- t-sql/mssql用命令行导入数据脚本的SQL语句示例
- 重启IIS服务的几种方法小结
- Python实现视频下载功能
- JavaScript获得url所有参数键值表的方法
- phpcms的分类名称和类别名称的调用
- CodeIgniter自定义控制器MY_Controller用法分析
- JavaScript奇技淫巧44招【实用】
- Python的垃圾回收机制深入分析
- js 对象是否存在判断
- python获取标准北京时间的方法
- java开发之读写txt文件操作的实现
- Android调用系统拍照裁剪图片模糊的解决方法
- 用GMail吗来打造完美个人下载站的方法提供
- 读站长成功的秘诀 成功三加一有感
- Android实现分享长图并且添加全图水印
- 浅谈javaSE 面向对象(Object类toString)
- smarty中改进truncate使其支持中文的方法
- Android自定义控件实现圆形进度条
