
这是我的代码:
class CreateNewCustomer extends AsyncTask<String,String,String> { @OverrIDe protected voID onPreExecute() { super.onPreExecute(); pDialog = new ProgressDialog(MainActivity4.this); pDialog.setMessage("Creating Customer.."); pDialog.setIndeterminate(false); pDialog.setCancelable(true); pDialog.show(); } @OverrIDe protected String doInBackground(String...args) { String fname = inputFname.getText().toString(); String lname = inputLname.getText().toString(); String phone = inputPhone.getText().toString(); List<nameValuePair> params = new ArrayList<nameValuePair>(); params.add(new BasicnameValuePair("fname",fname)); params.add(new BasicnameValuePair("lname",lname)); params.add(new BasicnameValuePair("phone",phone)); JsONObject Json = JsonParser.makehttpRequest(url_create_customer,"POST",params); Log.d("Create Response",Json.toString()); try { int success = Json.getInt(TAG_SUCCESS); if (success == 1) { Intent i = new Intent(getApplicationContext(),MainActivity5.class ); startActivity(i); finish(); } else { // This is the Else part } } catch (JsONException e) { e.printstacktrace(); } return null; } @OverrIDe protected voID onPostExecute(String file_url) { pDialog.dismiss(); }}解决方法 在这部分: if (success == 1) { Intent i = new Intent(getApplicationContext(),MainActivity5.class ); startActivity(i); finish();} 在调用finish()之前,您需要关闭进度对话框.它没有被解雇,因此窗口被泄露并导致异常.
请改用此代码:
if (success == 1) { Intent i = new Intent(getApplicationContext(),MainActivity5.class ); startActivity(i); pDialog.dismiss(); finish();} 另外,从onPostExecute()开始新活动,而不是doInBackground().使用标志检查事件是否成功,并在onPostExecute()中启动一个新活动,如下所示:
@OverrIDeprotected String doInBackground(String...args) { //... if (success == 1) { successFlag=true; } //...}@OverrIDeprotected voID onPostExecute(String file_url) { if(successFlag=true) { Intent i = new Intent(getApplicationContext(),MainActivity5.class ); startActivity(i); pDialog.dismiss(); finish(); }} 总结 以上是内存溢出为你收集整理的android – MainActivity已泄露窗口全部内容,希望文章能够帮你解决android – MainActivity已泄露窗口所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)