Activity小技巧
随时随地退出程序
新建一个结合类对所有活动进行管理。
1 public class ActivityCollector{ 2 public static List<Activity> activities = new ArrayList<>(); 3 public static void addActivity(Activity activity){ 4 activities.add(activity); 5 } 6 public static void removeActivity(Acitivity activity){ 7 activities.remove(acitivity); 8 } 9 public static void finishAll(){ 10 for(Activity activity: activities){ 11 if(!activity.isFinishing()){ 12 activity.finish(); 13 } 14 } 15 } 16 }
启动活动技巧
在SecondActivity中添加一个actionStrat()
1 public class SecondActivity extends BaseActivity{ 2 public static void actionStart(Context context,String data1,String data2){ 3 Intent intent = new Intent(context,SecondActivity.class); 4 intent.putExtra("param1","data1"); 5 intent.putExtra("param2","data2"); 6 context.startActivity(intent); 7 } 8 ...... 9 }
启动SecondActivity
public void onClick(View v){SecondActivity.actionStart(FirstAcitivity.this,"data1","data2"); }
杀死整个App
/** * 退出应用程序 */ public void AppExit(Context context) { try { ActivityCollector.finishAll(); ActivityManager activityMgr = (ActivityManager) context .getSystemService(Context.ACTIVITY_SERVICE); activityMgr.killBackgroundProcesses(context.getPackageName()); System.exit(0); } catch (Exception ignored) {} }
双击退出程序两个方法:
1)定义一个变量,来标识是否退出
// 定义一个变量,来标识是否退出 private static boolean isExit = false; Handler mHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);isExit = false;} };public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if (!isExit) {isExit = true;Toast.makeText(getApplicationContext(), "再按一次退出程序",Toast.LENGTH_SHORT).show();// 利用handler延迟发送更改状态信息mHandler.sendEmptyMessageDelayed(0, 2000);} else {exit(this);}return false;} return super.onKeyDown(keyCode, event);}
2)保存点击时间:
/保存点击的时间 private long exitTime = 0; public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if ((System.currentTimeMillis() - exitTime) > 2000) {Toast.makeText(getApplicationContext(), "再按一次退出程序",Toast.LENGTH_SHORT).show();exitTime = System.currentTimeMillis();} else {exit();}return false;}return super.onKeyDown(keyCode, event); }
转载于:https://www.cnblogs.com/yl-saber/p/6381339.html
Activity小技巧相关推荐
- Android逆向小技巧①:从Activity下手找到切入点,逆向分析支付宝APP
明确目标 关于Android应用的解包.反编译,在网上已经有无数文章了,此处不再赘述.当你已经使用 [d2j-dex2jar] 和 [jd-gui] 得到了APK反编译后的JAVA代码,面对庞大的代码 ...
- adb获取activity得小技巧
获取activity得小技巧 获取activity得小技巧 前言 命令 获取activity得小技巧 前言 调试遇到得一个问题,需要使用adb调起其他app界面.以前没有想过这个问题,现在做个存档. ...
- 最强 Android Studio 使用小技巧和快捷键
写在前面 本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键. 根据这些小技巧的使用场景,本 ...
- 分享几点Android 开发中的小技巧吧。不知道算不算?
也不想多说多,就拿几点来给大家分享吧: Android 在XML里面共享同一布局文件 使用XML的方式为背景添加渐变的效果 如何用代码自定义Android 自动生成的标题? 在ActivityGrou ...
- Android Studio 小技巧/快捷键 合集
原文链接: Android Studio Tips by Philippe Breault 原文作者 : Philippe Breault 译文出自 : 掘金翻译计划 译者 : Jaeger, Bru ...
- Android 小技巧
为什么80%的码农都做不了架构师?>>> 原文出处: Dan Lew 译文出处:Android Performance 前言 本文是一篇译文,这篇是这个系列的第一篇.讲述的 ...
- android studio导出apk_Android 应用构建速度提升的十个小技巧
应用的构建速度会直接影响开发效率,本文将带您通过改造一个 Android 应用: "Google 追踪圣诞老人 (Google Santa Tracker)" 来为大家提供十个小技 ...
- Android Coding利器之掌握小技巧,助你Coding更上一层楼~
本文讲的是Android Coding利器之掌握小技巧,助你Coding更上一层楼~,话说前几天在网上浏览到一大牛写的关于Android布局优化的文章,看后感触很深,回过头看看自己写过的代码,发现还是 ...
- Android学习--还有一些小技巧
这些小技巧 通过上面的这些文章,就把简单的安卓项目总结了一遍,当然你说懂这些就可以做Android开发的话还是不行的,欠缺的还有很多,但欠缺的这些我们有只能在工作中去总结以及不断的提高,这篇文章我们还 ...
最新文章
- 放弃Maven以后,我用了它。。。
- 程序猿生存指南-35 王旭新巢
- 移动端调试 weinre
- pytest第一版 入门学习
- 相邻兄弟选择器(+)、子选择器()、兄弟选择器(~)等用法
- plsql强制关闭后再打开提示已停止工作的解决办法
- 多频法如何解包裹相位?
- Android8.0 学习(15)---适配Android 8.0
- atitit 信息化2.0概论 艾提拉解读版读书笔记.docx 目录 1. 企业信息化1.0时代 1.1.6 C/S模式和B/S模式的好坏 1.1.7 大集中的争议 1.1.8 没有解决的孤岛问
- 查看android内置(webview)浏览器和系统浏览器内核信息
- 着迷英语900句_字体令人着迷
- 范围求和 II-c语言解决
- 上月用得好好的支付宝获取月账单的Java接口,月初突然返回“入参不合法”的解决方法
- java+selenium键盘操作
- 本项目基于paddlex实现目标检测
- 【记录】PR|一些使用技巧记录
- iOS开发 黑暗模式
- Symmetric 配置数据库同步
- matlab axisxy行列关系,在matlab中axis是什么意思
- Nodejs的安全学习