Toast 运行在主线程

Posted 海若初明

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Toast 运行在主线程相关的知识,希望对你有一定的参考价值。

因为toast的现实需要在activity的主线程才能正常工作,所以传统的线程不能使toast显示在actvity上,通过Handler可以使自定义线程运行于Ui主线程

前几次碰到这个问题,确实郁闷了很久... log -- java.lang.RuntimeException: Can‘t create handler inside thread that has not calledLooper.prepare()

解决办法很简单:
        Looper.prepare();

Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_LONG).show();

Looper.loop();

以上是关于Toast 运行在主线程的主要内容,如果未能解决你的问题,请参考以下文章

从另一个线程在主线程中运行代码

从 boost 线程在主线程上运行一个函数并将参数传递给该函数

在主窗体关闭并且不等待线程完成后让线程运行

为啥我的 AsyncTask 在主线程上运行?

在主线程开始运行之前捕获新的进程事件

scrollViewDidScroll scrollViewWillEndDragging 在主线程上同时运行?