我的主要活动课程是
public class MainActivity extends Activity {
private ProgressDialog pDialog;
private static final String TAG = MainActivity.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RequestQueue queue = Volley.newRequestQueue(this);
String url="http://onam.leah.in/android_login_api/register_json.php";
JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.POST,url,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
System.out.println(response);
hideDialog();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
hideDialog();
}
}) {
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put("user","swaroop");
return params;
};
};
queue.add(jsObjRequest);
}
private void showDialog() {
if (!pDialog.isShowing())
pDialog.show();
}
private void hideDialog() {
if (pDialog.isShowing())
pDialog.dismiss();
}
}
我尝试将详细信息发送到网址:http://onam.leah.in/android_login_api/register_json.php,null
我的日志猫位于
之下处理:harico.jsonexam2,PID:21185 java.lang.NullPointerException:尝试在空对象引用上调用虚方法'boolean android.app.ProgressDialog.isShowing()' at harico.jsonexam2.MainActivity.hideDialog(MainActivity.java:75) at harico.jsonexam2.MainActivity.access $ 000(MainActivity.java:29) at harico.jsonexam2.MainActivity $ 2.onErrorResponse(MainActivity.java:57) at com.android.volley.Request.deliverError(Request.java:598) 在com.android.volley.ExecutorDelivery $ ResponseDeliveryRunnable.run(ExecutorDelivery.java:101) 在android.os.Handler.handleCallback(Handler.java:739) 在android.os.Handler.dispatchMessage(Handler.java:95) 在android.os.Looper.loop(Looper.java:135) 在android.app.ActivityThread.main(ActivityThread.java:5312) at java.lang.reflect.Method.invoke(Native Method) 在java.lang.reflect.Method.invoke(Method.java:372) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:901) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:696)
答案 0 :(得分:0)
你确定这是正确的网址吗?
url="http://onam.leah.in/android_login_api/register_json.php,null";
最后一部分看起来不正确
答案 1 :(得分:0)
pDialog
为空。为ProgressDialog
创建实例。
ProgressDialog pDialog = new ProgressDialog(MainActivity.this);
答案 2 :(得分:0)
Handler handler = new Handler(); // create instance in onCreate()
...
在回调响应中使用它
handler.post(new Runnable() {
void run() {
hideDialog();
}
});