显示进度条

时间:2011-05-06 07:56:28

标签: android download

我是一名c ++程序员,是Android的新手,我正在使用以下方法从文本文件下载文本:

  public static String DownloadText(String URL)
    {
      int BUFFER_SIZE = 2000;
       InputStream in = null;
       try {
          in = OpenHttpConnection(URL);
           } 
      catch (IOException e1) 
      {
        e1.printStackTrace();
         return "";
       }

    InputStreamReader isr = new InputStreamReader(in);
    int charRead;
      String str = "";
      char[] inputBuffer = new char[BUFFER_SIZE];          
    try {
        while ((charRead = isr.read(inputBuffer))>0)
        {                    
            //---convert the chars to a String---
            String readString = 
                String.copyValueOf(inputBuffer, 0, charRead);                    
            str += readString;
            inputBuffer = new char[BUFFER_SIZE];
        }
        in.close();
    } 
    catch (IOException e) 
    {
        e.printStackTrace();
        return "";
    }    
    return str;        
}

但如果需要时间下载文本它显示一个空白屏幕,我想显示一个进度条而不是空白屏幕..我已经看到很多进度条的例子,但没有想到实现那些在我的案例......请帮助我..

谢谢,

4 个答案:

答案 0 :(得分:1)

使用AsyncTask,在onPreExecute中放置ProgressDialog,在doInBackground中下载,并在onPostExecute中关闭对话框。

答案 1 :(得分:0)

这可能对您有所帮助 Issue with android layout and progressbar

答案 2 :(得分:0)

你可以在课堂上声明进度录音。 私人ProgressDialog pd; 你可以在你的点击事件中粘贴以下代码。 pd = ProgressDialog.show(context,“Please wait ...”,“Loading data ...”,true,false); 在做了下载部分后写 pd.dismiss();

答案 3 :(得分:0)

在线程中执行该过程

例如

      new Thread(){
        public void run() {
              write the code here 

        };
    }.start();