Android在thread中Toast不能显示有关问题解决
Android在thread中Toast不能显示问题解决
改写代码之前是:Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_LONG).show();
改写之后:
Looper.prepare();
Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_LONG).show();
Looper.loop();
一般如果不是在主线程中又开启了新线程的话,一般都会碰到这个问题。
原因是在创建新线程的时候默认情况下不会去创建新的MessageQueue。
总结下:Toast 显示的必要条件:
1:Toast 显示需要出现在一个线程的消息队列中.... 很隐蔽
- 1楼lshguang892小时前
- 可以使用runOnUIThread()