Android开发Utils工具类集合

ToastUtils工具类

用于调试信息提示

import android.content.Context;
import android.widget.Toast;

/**
 * @创建者     李佳奇
 * @创建时间   2020年7月24日22:17:18
 * @描述      Toast工具类
 *
 */

public class ToastUtils {
    /**
     * @创建者      李佳奇
     * @创建时间    2020年7月24日22:18:01
     * @属性类型    String,Context
     * @属性名称    text,context
     * @依赖包      android.widget.Toast | android.content.Context
     * @描述       自定义Toast并在子线程中显示调试信息
     *
     */
    public static void showToastSafe(final Context context, final String text){
        ThreadUtils.runInUIThread(new Runnable() {
            @Override
            public void run() {
                Toast.makeText(context,text,Toast.LENGTH_LONG).show();
            }
        });
    }
}

ThreadUtils工具类

主线程(UI)与子线程之间进行切换的工具类

import android.os.Handler;

/**
 * @创建者     李佳奇
 * @创建时间   2020年7月24日12:45:47
 * @描述      线程工具类
 *
 */

public class ThreadUtils {

    /**
     * @创建者      李佳奇
     * @创建时间    2020年7月24日12:59:50
     * @属性类型    Handler
     * @属性名称    mHandler
     * @依赖包      android.os.Handler
     * @描述        UI(主)线程所需的一个Handler
     *
     */
    public static Handler mHandler = new Handler();


    /**
     * @创建者       李佳奇
     * @创建时间     2020年7月24日12:48:56
     * @参数类型     Runnable
     * @参数名称     task
     * @返回值类型   void
     * @返回值       NULL
     * @描述        通过传进来一个线程task,并新建Thread子线程后,在在子线程上执行task
     *
     */
    public static void runInThread(Runnable task){
        new Thread(task).start();
    }

    /**
     * @创建者       李佳奇
     * @创建时间     2020年7月24日12:55:38
     * @参数类型     Runnable
     * @参数名称     task
     * @返回值类型   void
     * @返回值       NULL
     * @描述        通过传进来一个线程task,并新建UI线程后,在UI线程(相当于主线程)上执行task
     *
     */
    public static void runInUIThread(Runnable task){
        mHandler.post(task);
    }
}

未完待续……

原文地址:https://www.cnblogs.com/JQ04/p/13512307.html