一天的美好时光。
我想让应用程序上传文件到服务器,并显示在ProgressDialog
上传的进度。更新进度对话框
这是我的代码至今:
的上传过程创建ProgressDialog
private void createUploadingDialog(int filesCount) {
uploadingDialog = new ProgressDialog(getActivity());
uploadingDialog.setIndeterminate(true);
loadingDialog.setMessage(getString(R.string.upload_progress, 0, filesCount));
loadingDialog.show();
}
辞退ProgressDialog
对上传程序
private void dismissUploadingDialog() {
if (uploadingDialog.isShowing())
uploadingDialog.dismiss();
}
更新ProgressDialog
对上传程序
private void updateUploadingDialog(final String dialogMessage) {
class UpdateDialog implements Runnable {
private String messageString;
private UpdateDialog(String ms) { messageString = ms; }
public void run() {
uploadingDialog.setMessage(messageString);
}
}
getActivity().runOnUiThread(new UpdateDialog(dialogMessage));
}
呼叫建立对话
createUploadingDialog(imagesPathsArray.size());
呼叫驳回对话框
dismissUploadingDialog();
呼叫更新对话框的onSuccess
updateUploadingDialog(getString(R.string.upload_progress, i, imagesPathsArray.size()));
呼叫更新对话框onFailure处
updateUploadingDialog(getString(R.string.retrying_request));
显示在对话框中的片段。要将图像发送到服务器,我使用了Retrofit2。
当我做对话框初始设置,消息得到正确设置(显示总文件和当前一个),但是,更新调用时消息不更新。出于某种原因,没有错误抛出,如果我加入Log.d
,它甚至表明该方法被调用。
谢谢你的帮助!
您应该阅读此。这将帮助您。 http://stackoverflow.com/questions/3028306/download-a-file-with-android-and-showing-the-progress-in-a-progressdialog?rq=1 –