ProgressDialog onCreate - PullRequest
       9

ProgressDialog onCreate

1 голос
/ 26 июня 2010

В «onCreate» я загружаю данные из сети. Продолжительность загрузки данных составляет 10 секунд.Я не хочу иметь ProgressDialog во время загрузки данных.Вот мой код, но ProgressDialog не появляется:

public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    ProgressDialog dialog = ProgressDialog.show(Test.this, "", 
        "Loading. Please wait...", true);

     try {
         URL myURL = new URL("http://www.sample.com/");
         URLConnection ucon = myURL.openConnection();
         InputStream is = ucon.getInputStream();
         BufferedInputStream bis = new BufferedInputStream(is);
         ByteArrayBuffer baf = new ByteArrayBuffer(50);
         int current = 0;
          while((current = bis.read()) != -1){
                  baf.append((byte)current);
          }

          content= new String(baf.toByteArray());

     }
     catch (Exception e) {}
     dialog.dismiss();
}

1 Ответ

1 голос
/ 26 июня 2010

Лучший способ сделать это - использовать AsyncTask, чтобы не замораживать приложение во время загрузки файла.Более того, что, если вы дадите своим пользователям лучший опыт, используя диалоговое окно индикатора выполнения, а не простое диалоговое окно.Это не сложно реализовать;Вы можете увидеть пример здесь: Загрузить файл с Android и показать прогресс в ProgressDialog

...