0

我开发了一个通过 HTTP-Request 与服务器通信的 Android 应用程序。有时请求需要更多时间,因此应用程序仅显示黑屏并在几秒钟后通过。有时黑屏会在几秒钟后出现,您可以一次又一次地发送请求。

是否有可能在屏幕加载时禁用 onTouch-Events 或显示图层?

谢谢你。

4

1 回答 1

1

在方法中使用asyncTask并启动您的 httprequest doInBackground(),并阻止用户,只需显示ProgressDialog

class YourRequestTask extends AsyncTask<Void, Void, JSONObject> {

        ProgressDialog progress;
        Context context;

        public YourRequestTask(Context context) {
             this.context = context;
        }

        @Override
        protected void onPreExecute() {
            progress = ProgressDialog.show(context, null,"Please wait...");
        }

        @Override
        protected JSONObject doInBackground(Void... params) {
            //do your work here for your http request
        }

        @Override
        protected void onPostExecute(JSONObject result) {
            progress.dismiss();
                        Log.i(TAG, "result is "+result.toString());
        }

    }
于 2012-11-28T15:16:01.907 回答