一天的美好時光。
我想讓應用程序上傳文件到服務器,並顯示在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 –