Android ProgressDialog用法之實現(xiàn)app上傳文件進度條轉(zhuǎn)圈效果
ProgressDialog 繼承自AlertDialog,AlertDialog繼承自Dialog
public class ProgressDialog extends AlertDialog
ProgressDialog的創(chuàng)建方式有兩種,一種是new ProgressDialog,一種是調(diào)用ProgressDialog的靜態(tài)方法show()創(chuàng)建并顯示,這種進度條只能是圓形條。
ProgressDialog dialog = ProgressDialog.show(this, '提示', '正在登陸中…', true, false, null);
本文重點給大家介紹android ProgressDialog進度條轉(zhuǎn)圈效果的實現(xiàn)。
Progress主要用來實現(xiàn)上傳的轉(zhuǎn)圈效果
由于我們想實現(xiàn)轉(zhuǎn)圈效果,然后同步上傳,則必須要用線程,所以先在最外面開個
private ProgressDialog
中間的代碼實現(xiàn)過程如下:
upPhoto.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //myDialog = ProgressDialog.show(this, 'Loading...', 'Please wait...', true, false); progressDialog=new ProgressDialog(PhotoPage.this); progressDialog.setTitle('This is ProgressDialog'); progressDialog.setMessage('Loading...'); progressDialog.setCancelable(true); progressDialog.show(); new Thread(new Runnable() { public void run() { upload(); progressDialog.dismiss(); //myHandler.sendMessage(new Message()); } }).start(); } });
上面的幾句是設(shè)置ProgressDialog轉(zhuǎn)圈的效果。
下面單獨開一個線程,這樣app在上傳的同時其它部分仍然繼續(xù)運行,最后在線程結(jié)束的時候加上progressDialog dismiss()表示關(guān)閉當(dāng)前轉(zhuǎn)圈效果。
注意要理解線程的概念,不能把progressDialog dismiss()這句話放線程結(jié)束start();這邊的后面,因為線程是同步的,主程序運行下來就直接執(zhí)行線程的后面語句,所以瞬間就被關(guān)閉了,上傳的轉(zhuǎn)圈效果就看不到了。
總結(jié)
到此這篇關(guān)于Android ProgressDialog用法之實現(xiàn)app上傳文件進度條轉(zhuǎn)圈效果的文章就介紹到這了,更多相關(guān)android ProgressDialog進度條轉(zhuǎn)圈內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Python 實現(xiàn)勞拉游戲的實例代碼(四連環(huán)、重力四子棋)2. Java GZip 基于內(nèi)存實現(xiàn)壓縮和解壓的方法3. SpringBoot+TestNG單元測試的實現(xiàn)4. jsp+servlet簡單實現(xiàn)上傳文件功能(保存目錄改進)5. JavaScript數(shù)據(jù)結(jié)構(gòu)之雙向鏈表6. 利用CSS制作3D動畫7. 一款功能強大的markdown編輯器tui.editor使用示例詳解8. 存儲于xml中需要的HTML轉(zhuǎn)義代碼9. SpringBoot整合log4j日志與HashMap的底層原理解析10. .Net加密神器Eazfuscator.NET?2023.2?最新版使用教程
