java - Firebase 使用对话框上传图像,但对话框未调用解除仍在 onSuccess 中工作
问题描述
我想在完成上传后关闭我的对话框,但它仍然工作有什么问题?我怎样才能解决我的代码问题???什么仍然是我的代码对话框工作没有隐藏我搜索但我没有答案
while (up < mArrayUri.size()) {
filepath.child(mArrayUri.get(k).getLastPathSegment()).putFile(mArrayUri.get(k))
.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
String downloadURL = taskSnapshot.getUploadSessionUri().toString();
String imgGet = "img" + c;
if (imgGet.equalsIgnoreCase("img1")) {
value.put("img1", downloadURL);
}
if (imgGet.equalsIgnoreCase("img2")) {
value.put("img2", downloadURL);
}
if (imgGet.equalsIgnoreCase("img3")) {
value.put("img3", downloadURL);
}
c++;
referenceAddReport.setValue(value);
dialog.dismiss();
}
});
up++;
k++;
}
解决方案
filepath.child(mArrayUri.get(k).getLastPathSegment()).putFile(mArrayUri.get(k)) .addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() { @Override public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
dialog.dismiss();
String downloadURL = taskSnapshot.getUploadSessionUri().toString();
String imgGet = "img" + c;
if (imgGet.equalsIgnoreCase("img1")) {
value.put("img1", downloadURL);
}
if (imgGet.equalsIgnoreCase("img2")) {
value.put("img2", downloadURL);
}
if (imgGet.equalsIgnoreCase("img3")) {
value.put("img3", downloadURL);
}
c++;
referenceAddReport.setValue(value);
结束();
}
});
推荐阅读
- scala - Spark 使用临时 AWS 凭证:java.lang.NoClassDefFoundError: org/apache/hadoop/fs/StorageStatistics
- x11 - 带有 X11 隧道的 SSH 提供身份验证错误
- python - 从字典中删除重复项
- image - 带有 cacheHeight 的 FadeInImage
- google-colaboratory - 有没有办法在 google.colab.kernel.comms 对象上注册消息处理程序回调?
- pandas - 如何过滤 NaN 值的数据框并创建这些 NaN 值的新数据框
- ios - 在 iOS(Flutter)中使用自定义 URL 方案从 BankID 应用程序重定向不起作用
- c# - 遍历字符串以返回数字只是检索第一个数字?
- javascript - 如何在 Windows 上关闭 node.js 实时服务器?
- go - Go:如何在 yaml 中保留根缩进?