我有处理大量进度对话框的 android 应用程序。我必须为每个 Activity 创建一个单独的对话框。

对话框创建在构造时将 Activity (上下文)作为参数。

有没有一种方法可以创建单个对话框(与应用程序而非 Activity 相关联)并在不同的 Activity 中显示它,这样我就不必重复创建它。

最佳答案

在 Utill helper 类中声明 showProgressDialoghideProgressDialog,如下面的代码 fragment 所示

public static ProgressDialog showProgressDialog(Context context) {
        ProgressDialog pDialog = new ProgressDialog(context);
        pDialog.setMessage("Please wait...");
        pDialog.setCancelable(false);
        pDialog.show();
        return pDialog;
    }

    public static void hideProgressDialog(ProgressDialog pDialog) {
        if (pDialog.isShowing())
            pDialog.dismiss();
    }

然后从需要显示 ProgressDialog 的 Activity 中调用,例如在 AsyncTask 类的 onPreExecute() 方法中,如下面的代码 fragment 所示
ProgressDialog pDialog = Util.showProgressDialog(this);

并使用以下代码隐藏progressDialog
 Util.hideProgressDialog(pDialog);

10-07 13:53