ProgressDialog 继承自AlertDialog,AlertDialog继承自Dialog
public class ProgressDialog extends AlertDialog
ProgressDialog的创建方式有两种,一种是new ProgressDialog,一种是调用ProgressDialog的静态方法show()创建并显示,这种进度条只能是圆形条。
ProgressDialog dialog = ProgressDialog.show(this, "提示", "正在登陆中…", true, false, null);
本文重点给大家介绍android ProgressDialog进度条转圈效果的实现。
Progress主要用来实现上传的转圈效果
由于我们想实现转圈效果,然后同步上传,则必须要用线程,所以先在最外面开个
private ProgressDialog
中间的代码实现过程如下:
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(); } });
上面的几句是设置ProgressDialog
转圈的效果。
下面单独开一个线程,这样app在上传的同时其它部分仍然继续运行,最后在线程结束的时候加上progressDialog dismiss()
表示关闭当前转圈效果。
注意要理解线程的概念,不能把progressDialog dismiss()
这句话放线程结束start();
这边的后面,因为线程是同步的,主程序运行下来就直接执行线程的后面语句,所以瞬间就被关闭了,上传的转圈效果就看不到了。
总结
到此这篇关于Android ProgressDialog用法之实现app上传文件进度条转圈效果的文章就介绍到这了,更多相关android ProgressDialog进度条转圈内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!