关闭

ProgressDialog简单封装

540人阅读 评论(0) 收藏 举报
分类:

尝试写了一个超级简单的封装,作用是为了写代码时偷懒 - -


模拟使用场景(一般是网络交互)
1.启动 ProgressDialogUtil.show(this, “哈哈哈”);
2.隐藏 ProgressDialogUtil.dismiss();

        // 1.启动
        ProgressDialogUtil.show(this, "哈哈哈");
        // 2.模拟耗时操作
                new Thread(new Runnable() {

                    @Override
                    public void run() {
                        try {
                            Thread.sleep(3000);
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                        //3.隐藏
                        ProgressDialogUtil.dismiss();
                    }
                }).start();

ProgressDialogUtil

package com.example.learing;

import android.app.ProgressDialog;
import android.content.Context;

/**
 * 
 * @author yj
 * 简易的加载过渡工具
 * 动画显示过程中不允许用户手动取消
 * 只能通过代码取消
 * 经过测试,context不允许设置为application的context,
 */
public class ProgressDialogUtil {
    private static ProgressDialog mDialog;

    private ProgressDialogUtil() {}

    /**
     * 显示
     * @param title
     * @param msg
     */
    public static void show(Context context, String title, String msg) {
        if (mDialog != null) {
            mDialog = null;
        }
        mDialog = new ProgressDialog(context);
        // 点击back键和点击屏幕不隐藏
        mDialog.setCancelable(false);
        mDialog.setTitle(title);
        mDialog.setMessage(msg);
        if (!mDialog.isShowing()) {
            mDialog.show();
        }
    }

    /**
     * 显示
     * @param context
     * @param msg
     */
    public static void show(Context context, String msg) {
        show(context, "", msg);
    }

    /**
     * 隐藏
     */
    public static void dismiss() {
        if (mDialog == null) {
            return;
        }

        if (mDialog.isShowing()) {
            mDialog.dismiss();
        }
    }

}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:41249次
    • 积分:859
    • 等级:
    • 排名:千里之外
    • 原创:26篇
    • 转载:82篇
    • 译文:0篇
    • 评论:0条