按两下返回键退出,退出多个activity,添加退出动画
来源:互联网 发布:vmware网络连接方式 编辑:程序博客网 时间:2024/06/17 22:08
按两下返回键退出,退出多个activity,添加退出动画
现在有很多软件在你按返回键的时候会提示“再按一下退出程序”之类的提示,其实实现很简单,代码如下:
直接放到你的activity中就可以实现了。
退出多个activity,其实就是每次打开activity的时候就把这个activity加入到列表中,当要退出的时候就通过列表把所有的activity都一一finish()掉。代码如下,新建个类:
每次打开新的activity的时候就调用addActivity这个方法,当要关闭所有的activity的时候就调用exit这个方法!
添加退出动画,我们退出activity的时候都要调用finish(),所有我们就可以重写这个方法,添加一些动画效果。代码如下:
现在有很多软件在你按返回键的时候会提示“再按一下退出程序”之类的提示,其实实现很简单,代码如下:
long mExitTime = 0; /** 点击两下返回键退出程序 */ public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { if ((System.currentTimeMillis() - mExitTime) > 2000) { Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show(); mExitTime = System.currentTimeMillis(); Log.e("tag",mExitTime+""); } else { finish(); } return true; } return super.onKeyDown(keyCode, event); }
直接放到你的activity中就可以实现了。
退出多个activity,其实就是每次打开activity的时候就把这个activity加入到列表中,当要退出的时候就通过列表把所有的activity都一一finish()掉。代码如下,新建个类:
/**Activity列表,用于关闭程序*/public class MyApplication extends Application{ private List<Activity> activitylsit=new LinkedList<Activity>(); private static MyApplication instance; private MyApplication(){} public static MyApplication getInstance(){ if (null==instance) { instance=new MyApplication(); } return instance; } public void addActivity(Activity activity) { activitylsit.add(activity); } public void exit() { for(Activity activity:activitylsit){ activity.finish(); } System.exit(0); }}
每次打开新的activity的时候就调用addActivity这个方法,当要关闭所有的activity的时候就调用exit这个方法!
添加退出动画,我们退出activity的时候都要调用finish(),所有我们就可以重写这个方法,添加一些动画效果。代码如下:
/**退出程序*/public void finish(){ super.finish(); //添加动画 overridePendingTransition(R.anim.rotate_left_in, R.anim.rotate_left_out);}
动画可以自己写,下面是的动画,复制后改文件名即可。
rotate_left_in
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="800" android:fromAlpha="0.0" android:toAlpha="1.0"/></set>
<pre style="font-family: 宋体; font-size: 11.3pt; color: rgb(169, 183, 198); background-color: rgb(43, 43, 43);"><span style="color: rgb(152, 118, 170);"><em>rotate_left_out</em></span>
<pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"><rotate android:duration="1000" android:fromDegrees="-360" android:interpolator="@android:anim/accelerate_decelerate_interpolator" android:pivotX="50%" android:pivotY="50%" android:toDegrees="+3600"/><scale android:duration="1000" android:fromXScale="0.6" android:fromYScale="0.6" android:pivotX="50%p" android:pivotY="50%p" android:toXScale=".0" android:toYScale=".0"/></set>
我也是新手,有什么不对的地方欢迎反馈!谢谢大家的支持!
欢迎带地址转发。。谢谢!
1 0
- 按两下返回键退出,退出多个activity,添加退出动画
- 退出多个Activity
- 退出多个activity
- Android 退出多个Activity | 退出程序
- Android 退出多个Activity | 退出程序
- Activity按两次返回键退出与Activity进入与退出的动画
- Activity进入退出动画
- activity进入退出动画
- Activity进场退出动画
- Activity退出动画无效
- 如何退出多个Activity
- 多个activity 退出总结
- 退出结束多个Activity
- 安全退出多个activity
- 广播退出多个Activity
- 安全退出多个activity
- 如何退出多个Activity
- Android退出多个Activity
- Impala源码解析(1)——概念与架构
- 数据库三范式详解
- Linux核心接口Netlink
- Shiro标签
- Silver Cow Party--poj3268(SPFA)
- 按两下返回键退出,退出多个activity,添加退出动画
- Dubbo java.io.IOException: Can not lock the registry cache file
- jvm简单介绍
- oc ------协议
- iOS中常见的几种存储方式
- js 判断手机横竖屏
- SQLite学习笔记(4)-数据库基本操作
- ios storyboadr(sizeClass)开发常用技巧及错误
- -Dmaven.multiModuleProjectDirectory system propery is not set