如何解决MaterialAlertDialogBuilder不会被解雇
我在异步任务中声明了MaterialAlertDialogBuilder,并在onPrexecute中将其初始化,并在onPostexecute中将其关闭。但是该对话框不会被关闭。我提到了其他类似的问题,但没有找到解决方案。有什么帮助吗? 这是我的代码
private class uploadImageasych extends AsyncTask<Void,Void,String> {
int p = 0;
List<File> imageList;
WaitBox waitBoxImage;
public uploadImageasych(List<File> imageList) {
this.imageList = imageList;
}
String response = null;
@Override
protected void onPreExecute() {
super.onPreExecute();
this.waitBoxImage = new WaitBox(AddProducts2.this);
waitBoxImage.showBox(localstorage.getValue(Localstorage.WAIT_TITLE),localstorage.getValue(Localstorage.WAIT_UPLOADING_IMAGES));
}
@Override
protected String doInBackground(Void... voids) {
PostCalls postCalls = new PostCalls();
for (p = 0; p < imageList.size(); p++) {
response = response + postCalls.uploadImages(imageList.get(p));
}
return response;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
waitBoxImage.dismiss();
replaceView(oldView,newView);
}
}
这是WaitBox类的代码:
public class WaitBox {
private Activity activity;
MaterialAlertDialogBuilder materialAlertDialogBuilder;
public WaitBox(Activity activity) {
this.activity = activity;
}
public void showBox(String title,String message) {
materialAlertDialogBuilder = new MaterialAlertDialogBuilder(activity)
.setIcon(R.drawable.ic_logo)
.setTitle(title)
.setMessage(message);
materialAlertDialogBuilder.create().show();
}
public void dismiss() {
materialAlertDialogBuilder.create().dismiss();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。