Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 进度对话框出错_Java_Android - Fatal编程技术网

Java 进度对话框出错

Java 进度对话框出错,java,android,Java,Android,“进度”对话框有什么问题? java文件: public class Start_Screen extends Menu_Activity { List<Bitmap> lbmp; List<String> ltitles; List<String> ldesc; Custom_Adapter adapter; ProgressDialog pd; @Override protected void onCreate(Bundle savedInstan

“进度”对话框有什么问题? java文件:

 public class Start_Screen extends Menu_Activity {


List<Bitmap> lbmp;
List<String> ltitles;
List<String> ldesc;
Custom_Adapter adapter;
ProgressDialog pd;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.start_screen);

    pd = new ProgressDialog(this, ProgressDialog.STYLE_SPINNER);
    pd.setTitle("Downloading...");
    pd.setMessage("Please wait.");
    pd.setCancelable(false);

    ListView list = (ListView) findViewById(R.id.soundslist);

    lbmp = new ArrayList<Bitmap>();
    ltitles = new ArrayList<String>();
    ldesc = new ArrayList<String>();

    new Download().execute();

    adapter = new Custom_Adapter(this, lbmp, ltitles);
    list.setAdapter(adapter);

}

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
    finish();
}


public class Download extends AsyncTask<Void, Void, Void>{



    @Override
    protected void onPostExecute(Void result) {
        // TODO Auto-generated method stub
        super.onPostExecute(result);

            pd.dismiss();
    }

    @Override
    protected Void doInBackground(Void... params) {
        // TODO Auto-generated method stub
        String url = "picsite.comze.com/?json=1";
        F JSONparser = new F();
        JSONObject picsite = JSONparser.getJSONFromUrl(url);
        try {
            JSONArray posts = picsite.getJSONArray("posts");
            for(int i=0;i<posts.length();i++){
                JSONObject post = posts.getJSONObject(i);
                String title = post.getString("title");
                ltitles.add(title);

                JSONArray photos = post.getJSONArray("attachments");
                JSONObject photo = photos.getJSONObject(0);
                String URL = photo.getString("url");

                URL downURL = new URL(URL);
                HttpURLConnection connect = (HttpURLConnection)downURL.openConnection();
                connect.setDoOutput(true);
                connect.connect();
                InputStream is = connect.getInputStream();
                Bitmap bmp = BitmapFactory.decodeStream(is);
                lbmp.add(bmp);

                String desc = photo.getString("description");
                ldesc.add(desc);
            }
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }



        return null;    
    }



    @Override
    protected void onPreExecute() {
        // TODO Auto-generated method stub
        super.onPreExecute();
        pd.show();
    }


}
}
public class Start\u屏幕扩展菜单活动{
列出lbmp;
列出清单;
列出ldesc;
自定义适配器;
进展性帕金森病;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
//TODO自动生成的方法存根
super.onCreate(savedInstanceState);
setContentView(R.layout.start_屏幕);
pd=新建ProgressDialog(这是ProgressDialog.STYLE\u微调器);
pd.setTitle(“下载…”);
设置消息(“请稍候”);
pd.可设置可取消(假);
ListView列表=(ListView)findViewById(R.id.soundslist);
lbmp=newarraylist();
ltitles=newarraylist();
ldesc=新的ArrayList();
新下载().execute();
适配器=新的自定义适配器(此、lbmp、ltitles);
list.setAdapter(适配器);
}
@凌驾
受保护的void onPause(){
//TODO自动生成的方法存根
super.onPause();
完成();
}
公共类下载扩展异步任务{
@凌驾
受保护的void onPostExecute(void结果){
//TODO自动生成的方法存根
super.onPostExecute(结果);
pd.解散();
}
@凌驾
受保护的Void doInBackground(Void…参数){
//TODO自动生成的方法存根
String url=“picsite.comze.com/?json=1”;
F JSONparser=new F();
JSONObject picsite=JSONparser.getJSONFromUrl(url);
试一试{
JSONArray posts=picsite.getJSONArray(“posts”);

对于(int i=0;i您应该在显示对话框之前创建它

例如:

pd.create().show(); 反而

pd.show()


另外,在onPostExecute中,如果pd!=null,则执行pd.disease();

通过检查asynctask中的isfinishing()检查活动是否存在

  if(!(Activity) context).isFinishing()){
     dialog.show();
       }

 if(!(Activity) context).isFinishing()){
     dialog.cancel();
       }

尝试取消onDestroy()方法中的进程对话框也为异步任务粘贴代码
  if(!(Activity) context).isFinishing()){
     dialog.show();
       }

 if(!(Activity) context).isFinishing()){
     dialog.cancel();
       }