我的应用程序启动一个线程来查询 Web 中的一些数据。我想在找不到任何内容时显示 Toast 消息,但我的应用程序总是崩溃。
我试过在线程中使用应用程序上下文,如下所示:
Toast.makeText(getApplicationContext(), "testttt", Toast.LENGTH_LONG).show();
我还尝试使用 Toast 调用创建一个 Runnable 并从 Thread 调用 runOnUiThread(runnable)(此 runnable 中的 Toast 调用使用 Activity 作为第一个参数)。
有没有人对如何实现这个有任何想法?
最佳答案
尝试在 Handler 对象内部发布。
final Handler mHandler = new Handler();
final Runnable mUpdateResults = new Runnable() {
public void run() {
Toast(this, message, duration).show();
}
new Thread() {
public void run() {
mHandler.post(mUpdateResults);
}
}.start();
关于android - 从线程发布 Toast 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4209814/