Android 子线程延时处理操作
今天碰到一个情景,先要显示一个toast,然后关闭app。直接用写好的ActivityManagger杀掉当前进程,本以为toast还会继续显示,然而并没有。
toast创建的时候,是这样的:
Toast.makeText(this, obj + "", Toast.LENGTH_LONG).show();
需要一个context容器才可以。kill当前进程导致了toast没有容器承载,直接消失了。
想了一下,使用子线程处理的方式可以解决。纯JAVA思维哈哈。但是在Android里用 wait()总觉得有点low,入乡随俗用Android的方法吧。
具体解决过程是这样的:
mHandler.sendEmptyMessageDelayed(Constant.FINISH_DELAY_TIME, 3000);
就是这个方法,sendEmptyMessageDelayed,意思是,在延迟一定时间后,发送空信息
然后新建一个mhandler来处理这些信息:
private Handler mHandler = new Handler(new Handler.Callback() {@Override public boolean handleMessage(Message msg) {switch (msg.what) {case Constant.FINISH_DELAY_TIME://退出程序 AppManager.getInstance(LoginActivity.this).exit(); break; default:break; }return false; } });
这样就做到了延时关闭的效果。
这个子线程处理的方式,有很多用处。不只是可以用到这里。要学会举一反三
Android 子线程延时处理操作相关推荐
- Android子线程真的不能更新UI么
Android单线程模型是这样描述的: Android UI操作并不是线程安全的,并且这些操作必须在UI线程执行 如果在其它线程访问UI线程,Android提供了以下的方式: Activity.run ...
- Android ThreadUtil 线程公共类,判断是否在主线程/ 子线程执行 相关操作
前言:通常,我们写的公共的模块给别人用,但是这个模块又必须在特定的线程中执行. 比如,一个加载网络图片的的方法,需要在子线程中执行. /** * 加载网络图片 */ private void load ...
- Android中Handler消息传递机制应用之子线程不允许操作主线程的组件
场景 进程 一个Android应用就是一个一个进程,每个应用在各自的进程中运行. 线程 比进程更小的独立运行的基本单位,一个进程可以包含多个线程. 要求 一个TextView和一个Button,点击B ...
- android子线程没有运行完,android假如主线程依赖子线程A的执行结果,如何让A执行完成,之后主线程再往下执行呢?...
/* String ObjectResult="原先的结果"; //使用VOLLY框架(与问题无关) JsonObjectRequest jsonObjectRequest = n ...
- Android子线程中更新UI的4种方法
方法一:用Handler 1.主线程中定义Handler: Handler mHandler = new Handler() { @Override public void handleMessage ...
- 【转】Android子线程真的不能更新UI么
Android单线程模型是这样描述的: Android UI操作并不是线程安全的,并且这些操作必须在UI线程执行 如果在其它线程访问UI线程,Android提供了以下的方式: Activity.run ...
- Android子线程更新UI的方法总结
消息机制,对于Android开发者来说,应该是非常熟悉.对于处理有着大量交互的场景,采用消息机制,是再好不过了.有些特殊的场景,比如我们都知道,在Android开发中,子线程不能更新UI,而主线程又不 ...
- Android 子线程更新主线程UI视图
消息机制,对于Android开发者来说,应该是非常熟悉.对于处理有着大量交互的场景,采用消息机制,是再好不过了.在Android开发中,子线程不能更新主线程UI,而主线程又不能进行耗时操作(例:网络请 ...
- Android子线程进度条不显示的问题
不显示进度条的代码逻辑: 首先,新建了一个类,此类有一个内部类,内部类继承Therad 类中有一个普通方法,普通方法执行的时候调用此方法中的内部类. 这时候,展示进度条. 进度条展示在普通方法中,那么 ...
最新文章
- 最新Transformer模型大盘点,NLP学习必备,Google AI研究员出品丨资源
- Spring Boot集成kafka完整版
- Orleans 知多少 | Orleans 中文文档上线
- 26.0.0-alpha1_WildFly 8.0.0.Alpha1的发布和一些历史
- Linux IO复用区别与epoll详解
- 我就拜你为师的飞秋爱好者
- java activity生命周_关于Activity的生命周期和任务栈的理解
- sdut1283Five in a Row, Again
- php定位符,浅析PHP正则表达式定位字符
- SAP培训——SAP License基础
- Asp.Net访问Oracle 数据库 执行SQL语句和调用存储过程
- CentOS 6.9使用iptables搭建网关服务器(转)
- [Android Pro] 关于BitmapFactory.decodeStream(is)方法无法正常解码为Bitmap对象的解决方法...
- sql替换字符串中的部分字符
- 首发:Meltdown漏洞分析与实践
- python arp断网攻击_arp断网攻击,小编教你arp断网攻击怎么解决
- 新年PHP微信抽奖系统源码开源二开版带完整后台,支持修改开发
- 修改yum源带来的问题 curl: (35) Cannot communicate securely with peer: no common encryption algorithm(s).
- mysql bitmap index_位图索引:原理(BitMap index)
- Unity动画系统详解1:在Unity中如何制作动画?