我正在创建一个应用程序,该应用程序从多个Activity片段向服务器发送许多请求。 我想在请求发送方法中显示ProgressDialog,在这种情况下,我想编写一次代码以显示ProgressDialog,而我不想为每个请求编写显示进度对话框。
这是我的DataAccess类,用于连接到服务器并发送请求,每个请求都使用该类
[ts] 'await' expression is only allowed within an async function...
我可以在此类中显示ProgressDialog吗?
答案 0 :(得分:0)
您可以使用create / Update / cancel方法为ProgressDialogUtil创建一个单独的类,然后从所需的任何活动中调用该方法。
在收到响应后为每个“请求和取消”调用Show方法。
创建此类并调用方法->
public class MyProgressDialog {
private static ProgressDialog progressDialog;
public static void show(Context context, int messageResourceId) {
if (progressDialog != null) {
progressDialog.dismiss();
}
int style;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
style = android.R.style.Theme_Material_Light_Dialog;
} else {
//noinspection deprecation
style = ProgressDialog.THEME_HOLO_LIGHT;
}
progressDialog = new ProgressDialog(context, style);
progressDialog.setMessage(context.getResources().getString(messageResourceId));
progressDialog.setCancelable(false);
progressDialog.show();
}
public static void dismiss() {
if (progressDialog != null && progressDialog.isShowing()) {
progressDialog.dismiss();
progressDialog = null;
}
}
}