android listview刷新期间的空指针异常

时间:2011-04-28 10:30:35

标签: android listview refresh nullpointerexception

我想在下载完成后更新我的列表视图但是它给了我Nullpointer Exception我的代码是按照

try {
                    URL url = new URL(GlobalVariable.Getstr());
                    HttpURLConnection c = (HttpURLConnection) url.openConnection();
                    c.setRequestMethod("GET");
                    c.setDoOutput(true);
                    c.connect();
                       int lenghtOfFile = c.getContentLength();
                       Log.d("ANDRO_ASYNC", "Lenght of file: " + lenghtOfFile);
                    String PATH = Environment.getExternalStorageDirectory()
                            + "/download/";
                    Log.v(LOG_TAG, "PATH: " + PATH);
                    File file = new File(PATH);
                    file.mkdirs();

                    // String fileName = "workTest.mp3";
                    String fileName = GlobalVariable.Getstrpath().toString();

                    File outputFile = new File(file, fileName);
                    FileOutputStream fos = new FileOutputStream(outputFile);

                    InputStream is = c.getInputStream();

                    byte[] buffer = new byte[1024];
//                  int len1 = 0;
                     long total = 0;
//                  while ((len1 = is.read(buffer)) != -1) {
//                      total += len1;
//                      publishProgress(""+(int)((total*100)/lenghtOfFile));
//                      fos.write(buffer, 0, len1);
//                  
                     while ((count = is.read(buffer)) != -1) {
                            total += count;
                            publishProgress(""+(int)((total*100)/lenghtOfFile));
                            fos.write(buffer, 0, len1);

                    }
                    fos.close();
                    is.close();
//                  ArrayAdapter aa=new ArrayAdapter(FindFilesByType.this, android.R.layout.test_list_item,Ringtones);
//                  aa.setNotifyOnChange(true);
//                  lv1.setAdapter(aa);
                    try{

                        ((ArrayAdapter) lv1.getAdapter()).notifyDataSetChanged();

                //      adapter.notifyDataSetChanged();




                    }
                    catch (Exception e) {
                        Log.i(LOG_TAG, "Error: " + e.toString());
                    }



我正在接受

04-28 15:56:17.198: INFO/app(624): Error: java.lang.NullPointerException

我在做什么错?

提前致谢

1 个答案:

答案 0 :(得分:1)

哪一行异常即将到来。

并使用 notifyDataSetChanged();适配器上的方法而不是lvl.getAdapter()。 notifyDataSetChanged();

已修改: notifydatasetChange请参阅此

希望有所帮助......