Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.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
Android ProgressDialog返回null_Android_Android Asynctask_Progressdialog - Fatal编程技术网

Android ProgressDialog返回null

Android ProgressDialog返回null,android,android-asynctask,progressdialog,Android,Android Asynctask,Progressdialog,我试图在使用JSON捕获数据时创建一个进度对话框。 但它总是返回空值。代码如下: class NetWork extends AsyncTask<Void, Void, ArrayAdapter<?>> { private ProgressDialog pd; public void Network() { try { ServiceStations service = new S

我试图在使用JSON捕获数据时创建一个进度对话框。 但它总是返回空值。代码如下:

class NetWork extends AsyncTask<Void, Void, ArrayAdapter<?>> {

        private ProgressDialog pd;

        public void Network() {
            try {
                ServiceStations service = new ServiceStations();
                service.load(WorkshopActivity.this.getApplicationContext());
            } catch (IOException e) {
                // do nothing
                e.printStackTrace();
            } catch (JSONException e) {
                // do nothing
                e.printStackTrace();
            }
            pd = new ProgressDialog(WorkshopActivity.this);
            pd.setMessage("Load");
            pd.setCancelable(false);
            pd.setCanceledOnTouchOutside(false);

        }

        @Override
        public ArrayAdapter<?> doInBackground(Void... params) {


            @SuppressWarnings({ "unchecked", "rawtypes" })
            final ArrayAdapter<?> areaAdapter = new ArrayAdapter(
                    WorkshopActivity.this, android.R.layout.simple_list_item_1,
                    ServiceStations.getAreaList());

            return areaAdapter;
        }

        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            try {
                pd.show(); // this returns null
            } catch (NullPointerException e) {
                // TODO: handle exception
                e.printStackTrace();
            }

        }

        @Override
        public void onPostExecute(ArrayAdapter<?> areaAdapter) {
            /*
             * if (dialog.isShowing()) { dialog.dismiss(); }
             */
            list = (ListView) findViewById(R.id.listWorkshopCity);
            list.setAdapter(areaAdapter);
            adapter = areaAdapter;
        }

    }
我一直在尝试搜索互联网,但我已经找到了解决办法 任何帮助都将不胜感激。谢谢..

你有这个

 public void Network()
构造函数没有返回类型

应该是

 public Network()
 {
      // rest of the code
 }    

在未调用的方法中初始化progressdialog。在类中的任何位置都不调用方法Network。因此
NullPointerException

您是否仅使用网络构造函数创建异步任务的实例?@user1722156还请注意,所有网络实时操作都应在
doInbackGround
中完成。如果
ServiceStations
网络实时操作是否将其移动到
doInbackGround
中。另外
service.load(WorkshopActivity.this)
。您已经具有活动上下文。
 public Network()
 {
      // rest of the code
 }