在Service中使用Toast
来源:互联网 发布:升级数据 日月 编辑:程序博客网 时间:2024/05/17 04:56
原文地址:http://whatandroid.blog.51cto.com/2172732/844929
一般如果不是在主线程中又开启了新线程的话,一般都会碰到这个问题。
原因是在创建新线程的时候默认情况下不会去创建新的MessageQueue。
总结下:Toast 显示的必要条件:
1:Toast 显示需要出现在一个线程的消息队列中.... 很隐蔽
public class TestService extends Service {
private Handler handler;
@Override
public IBinder onBind(Intent intent){
return null;
}
@Override
public void onCreate(){
handler = new Handler(Looper.getMainLooper());
System.out.println("service started");
handler.post(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(), "Test",Toast.LENGTH_SHORT).show();
}
});
}
}
private Handler handler;
@Override
public IBinder onBind(Intent intent){
return null;
}
@Override
public void onCreate(){
handler = new Handler(Looper.getMainLooper());
System.out.println("service started");
handler.post(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(), "Test",Toast.LENGTH_SHORT).show();
}
});
}
}
0 0
- 在Service中使用Toast
- [Android] 在Service中使用Toast
- android 在service中使用toast
- Android:在Service中使用Toast
- 在IntentService中使用Toast与在Service中使用Toast的异同
- 在IntentService中使用Toast与在Service中使用Toast的异同,intentservicetoast
- Handler: Service中使用Toast
- Handler: Service中使用Toast
- Handler: Service中使用Toast
- Toast 在service中出现的问题
- Service中使用Toast显示问题
- Service中使用Toast显示问题
- service中使用Toast.makeText的注意事项
- Service中使用Toast显示问题
- 在Async中使用Toast
- 在Activity中使用Toast
- 在Activity中使用Toast
- 在活动中使用toast
- windows api打开文件对话框
- Java构造方法
- WIN下编译OPENSSL
- asmack登陆抛出异常,可以注册新用户,但是登陆不了
- 简单说明View
- 在Service中使用Toast
- 第七周——友元类
- JAVA 获取当前月的初始时间的时间戳
- C# interface与abstract class区别
- haproxy+keepalived实现高可用负载均衡
- 我不是懒东西
- oracle 备份、还原、导出导入,创建表空间以及用户的命令和语句
- 聚类分析_R语言
- 功能权限和数据权限管理的实现