`

(Android实战)ProgressDialog+Thread实现弹出进度条数据异步加载(配有效果图)(转)

 
阅读更多

效果图

 

 

 

实现说明

 

   实现流程

 

  Step One 弹出进度条对话框

 

  Step Two 执行线程,在线程中实现数据的异步加载

 

  Step Three 在线程数据加载完成后,调用Handler并集合数据,更新界面

 

 

 

3源码

 

//添加异步操作  
             m_Dialog=ProgressDialog.show(m_context, "请等待...", "正在下载安装文件,请稍后...",true);
             //mRegsiterHandler.sleep(100);
new Thread(new Runnable(){

                    @Override
                    publicvoid run() {
                   //加载数据
                         result=0;
                          try{
                              //下载文件
                              String url="http://00.00.00.00:80/nationaltest.html";
                                HttpClient client =new DefaultHttpClient();     
                              HttpGet get =new HttpGet(url);     
                              HttpResponse response;     
                              
                              response = client.execute(get);     
                              HttpEntity entity = response.getEntity();     
                              long length = entity.getContentLength();     
                              InputStream is = entity.getContent();     
                              FileOutputStream fileOutputStream =null;     
                              if (is !=null) {     
                                  File file =new File(Environment.getExternalStorageDirectory(), "nationaltest.apk");     
                                  fileOutputStream =new FileOutputStream(file);     
                                  byte[] buf =newbyte[1024];     
                                  int ch =-1;     
                                  while ((ch = is.read(buf)) !=-1) {     
                                      fileOutputStream.write(buf, 0, ch);     
                                  }     
                             }     
                             fileOutputStream.flush();     
                             if (fileOutputStream !=null) {     
                                 fileOutputStream.close();     
                             }  
                             result=2;
                          }
                         catch(Exception ex){
                             result=-1; 
                         }           
                        
                    //更新界面
                         // Update the progress bar 
                         mHandler.post(new Runnable() {     
                             publicvoid run() {                          
                                 if(result==2)
                                      install();
                                       else
                                           Toast.makeText(m_context, "下载文件失败,请检查网络连接", Toast.LENGTH_SHORT).show();    
                                 }                  
                             });
                        
                    
                     m_Dialog.dismiss();
                    }}).start();
             
              }

 

分享到:
评论

相关推荐

    android 自定义组合progressdialog进度条

    android 自定义组合progressdialog进度条,方便你的使用............................................................................................

    Android ProgressDialog 进度条对话框的模拟实现和代码解析.rar

    Android ProgressDialog 进度条对话框的模拟实现和代码解析,此为例子源代码,在本例中实现进度条需要调用onPrepareDialog()方法和showDialog(),应用程序处理进度条指示功能。

    Android ProgressDialog进度条对话框.rar

    在"Android ProgressDialog进度条对话框.rar"的压缩包中,可能包含了一些示例代码、XML布局文件和资源图片,供开发者参考和学习如何在实际项目中实现和优化进度条对话框。通过研究这些文件,开发者可以深入理解...

    android dialog ——ProgressDialog 进度条对话框详解

    在Android开发中,ProgressDialog是一个非常常用的组件,它用于在用户执行长时间操作时显示一个带有进度条的对话框,提供一种良好的用户体验,让用户知道系统正在后台处理任务。在本篇文章中,我们将深入探讨...

    Android中自定义ProgressDialog实现加载滚动条效果,例如显示“请稍后……”

    下面我们将深入探讨如何在Android中自定义ProgressDialog,实现加载滚动条效果。 首先,我们需要创建一个新的布局文件,比如`custom_progress_dialog.xml`,来定义自定义对话框的视图结构。在这个布局文件中,我们...

    安卓自定义Dialog带有进度条的效果的ProgressDialog

    在这个“安卓自定义Dialog带有进度条的效果的ProgressDialog”示例中,我们将深入探讨如何创建并自定义这种效果。 首先,我们来了解ProgressDialog的基本用法。在Android SDK中,ProgressDialog是一个内置类,继承...

    文件复制及进度条 android 文件复制 进度条 progressdialog

    在Android开发中,文件复制和进度条的显示是常见的需求,尤其在移动应用中,用户可能需要将数据从一个位置移动到另一个位置,或者在后台下载文件时展示进度。`ProgressDialog`是Android SDK提供的一种对话框组件,...

    android 对话框中的进度条 (ProgressDialog)

    在Android开发中,ProgressDialog是一个非常常见的组件,它用于在执行耗时操作时向用户展示一个对话框,通常显示一个进度条来表示任务的进度。这个组件对于提升用户体验至关重要,因为它可以告知用户应用正在进行...

    安卓源码+ProgressDialog、LoadingDialog+用于加载页面时的进度条或者加载框加载

    该项目通过使用两种不同的方法来实现了 ProgressDialog 的功能,又在项目中集成了自定义的 LoadingDialog 供大家选择,赶快下载起来吧。 为了让大家方便下载,所以只需要一个积分就可以了,要是大家觉得积分还是有点...

    Android 自定义progressDialog实现

    `ProgressDialog`是Android SDK中的一个类,它继承自`AlertDialog`,通常用于显示一个带有进度条的对话框,可以是水平的或旋转的。默认样式可能无法满足所有设计要求,因此自定义成为必然。 要实现自定义`...

    Android 水平垂直圆形菊花进度条加载动画progress bar

    本主题主要关注如何实现自定义的水平、垂直、圆形以及菊花(loading)加载动画效果的进度条。 1. **水平进度条:** 水平进度条是最基础的进度条形式,通常用于表示任务完成的百分比。在Android中,我们可以使用`...

    android网络加载显示进度条

    在Android开发中,当应用程序需要从网络下载数据时,为了提供良好的用户体验,通常会使用进度条(ProgressDialog)来展示加载状态。"android网络加载显示进度条"这一主题主要涉及两个关键概念:ProgressDialog和多...

    android webview 顶部进度条+旋转等待dialog例子

    当我们加载一个网页时,尤其是在网络状况不佳的情况下,用户可能需要等待一段时间,此时为了提供更好的用户体验,通常会显示进度条来指示加载进度,并且在需要的时候显示旋转等待对话框(ProgressDialog)以告知用户...

    Android 自定义ProgressDialog实例

    在Android开发中,ProgressDialog是一种常见的UI组件,用于在应用程序执行耗时操作时向用户显示进度指示,例如网络请求、数据加载等。然而,系统默认的ProgressDialog样式可能无法满足所有设计需求,因此开发者经常...

    又一个使用ProgressDialog创建Android进度条的例子.rar

    Android百分比加载进度条的实例,又一个使用ProgressDialog创建进度条的例子,进度条的实例方法,其实比较简单,先看以下代码:  重写onCreateDialog方法  switch(id){//对id进行判断  case PROGRESS_DIALOG://...

    android ProgressDialog 自定义样式

    本篇文章将详细讲解如何在Android中自定义ProgressDialog,以及如何实现带加载图片和文字说明的功能。 首先,我们需要创建一个新的类来继承自Dialog,因为ProgressDialog本质上就是Dialog的一个子类。这个类将作为...

    android自定义ProgressDialog样式

    android自定义ProgressDialog样式详解,一分钟教会你如何自定义android样式。

    Android 对话框中的进度条 ProgressDialog

    在Android应用开发中,ProgressDialog是用户界面中常见的一种组件,用于在执行耗时操作时向用户提供反馈,通常显示为一个带有进度条的对话框。在本文中,我们将深入探讨如何在Android中使用ProgressDialog,以及其...

    Android ProgressDialog用法之实现app上传文件进度条转圈效果

    在本文中,我们将深入探讨如何使用ProgressDialog来实现一个app上传文件时的进度条转圈效果。 首先,ProgressDialog是AlertDialog的子类,而AlertDialog又是Dialog的子类。ProgressDialog提供了两种创建方式:直接...

    android 自定义ProgressDialog对话框

    在Android开发中,ProgressDialog是一种常见的UI组件,用于在执行耗时操作时向用户显示进度,以提供更好的用户体验。默认的ProgressDialog通常包含一个圆形进度条,但有时为了满足特定的界面设计或功能需求,开发者...

Global site tag (gtag.js) - Google Analytics