博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发之——子线程中使用Toast或者更新UI
阅读量:4051 次
发布时间:2019-05-25

本文共 719 字,大约阅读时间需要 2 分钟。

Toast只能在主UI线程使用,使用下面的办法可以解决

第一种,使用Looper,不过这种办法会终止,子线程之后的代码

[java]
  1. Looper.prepare();     
  2. Toast.makeText(aActivity.this,"test",Toast.LENGTH_SHORT).show();  
  3. Looper.loop();  
第二种,就是用 Handler Message

[java]
  1. private final Handler msgHandler = new Handler(){  
  2.         public void handleMessage(Message msg) {  
  3.                 switch (msg.arg1) {  
  4.                 case R.string.msg_not_network:  
  5.                         Toast.makeText(getApplicationContext(), getResources().getString(R.string.msg_not_network), Toast.LENGTH_SHORT).show(); 
  6.                         Toast.makeText(getApplicationContext(), msg.obj.toString(), Toast.LENGTH_SHORT).show(); 
  7.                         break;  
  8.                 default:  
  9.                         break;  
  10.                 }  
  11.         }  
  12. };  
在子线程中使用

[java]
  1. Message msg = msgHandler.obtainMessage();  
  2. msg.arg1 = R.string.msg_not_network; 
  3. msg.obj. = "显示的内容" ;
  4. msgHandler.sendMessage(msg); 

转载地址:http://decci.baihongyu.com/

你可能感兴趣的文章
Python自动化之pytest框架使用详解
查看>>
【正则表达式】以个人的理解帮助大家认识正则表达式
查看>>
性能调优之iostat命令详解
查看>>
性能调优之iftop命令详解
查看>>
非关系型数据库(nosql)介绍
查看>>
移动端自动化测试-Windows-Android-Appium环境搭建
查看>>
Xpath使用方法
查看>>
移动端自动化测试-Mac-IOS-Appium环境搭建
查看>>
Selenium之前世今生
查看>>
Selenium-WebDriverApi接口详解
查看>>
Selenium-ActionChains Api接口详解
查看>>
Selenium-Switch与SelectApi接口详解
查看>>
Selenium-Css Selector使用方法
查看>>
Linux常用统计命令之wc
查看>>
测试必会之 Linux 三剑客之 sed
查看>>
Socket请求XML客户端程序
查看>>
Java中数字转大写货币(支持到千亿)
查看>>
Java.nio
查看>>
函数模版类模版和偏特化泛化的总结
查看>>
VMware Workstation Pro虚拟机不可用解决方法
查看>>