ToastUtils
Posted 码上加油站
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ToastUtils相关的知识,希望对你有一定的参考价值。
import android.content.Context; import android.os.Handler; import android.os.Looper; import android.widget.Toast; /** * Created by zhengping on 2017/1/15,11:26. */ public class ToastUtils { //sHandler维护的是主线程的消息队列 private static Handler sHandler = new Handler(Looper.getMainLooper()); //无论如何,Toast都是在主线程中被调用的 public static void showToast(final Context context,final String msg) { //判断是否是主线程 if(Looper.myLooper() == Looper.getMainLooper()) { Toast.makeText(context, msg, Toast.LENGTH_SHORT).show(); } else { //handler.sendMessage(msg) 把一个消息发送到了消息队列,这个消息队列属于主线程的呢还是子线程的呢,取决于handler维护的是哪一个线程的消息队列 // 将runnable丢到主线程的消息队列 sHandler.post(new Runnable() { @Override public void run() { Toast.makeText(context, msg, Toast.LENGTH_SHORT).show(); } }); } /*new Thread(new Runnable() { @Override public void run() { Looper.prepare(); //handler维护的是子线程的消息队列 Handler handler = new Handler(); Looper.loop(); } }).start();*/ } }
以上是关于ToastUtils的主要内容,如果未能解决你的问题,请参考以下文章