在AlertDialog的正按钮点击事件中,添加一个AsyncTask来执行Firestore请求,以便等待请求完成后再关闭对话框。以下是示例代码:
new AlertDialog.Builder(this)
.setTitle("标题")
.setMessage("消息")
.setPositiveButton("确认", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
AsyncTask task = new AsyncTask() {
@Override
protected Void doInBackground(Void... voids) {
// 在此执行Firestore请求
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
dialog.dismiss();
}
};
task.execute();
}
})
.setNegativeButton("取消", null)
.show();
在点击确认按钮后,会启动一个AsyncTask来执行Firestore请求。在请求完成后,AsyncTask会调用onPostExecute方法,然后关闭对话框。这样就能确保对话框关闭之前异步请求已经完成。