如何退出当前活动返回

时间:2012-06-26 10:38:27

标签: android android-activity

    protected void onListItemClick(ListView list, View view, int position, long id)   
    {
    super.onListItemClick(list, view, position, id);
    fname=r.get(position);
    fid=s1.get(position); 

    if(tid!=null)  
    {
     try{
          //http post
          HttpClient httpclient = new DefaultHttpClient();
          HttpPost httppost = new HttpPost("http://192.168.0.5/staging/android/add_playlist_songs.php?uid="+uid+"&tid="+tid+"&fid="+fid+"&action=add");
          System.out.println("addsongurl==="+ur);
          System.out.println(httppost);
          httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
          HttpResponse response = httpclient.execute(httppost);
          HttpEntity entity = response.getEntity();
          is = entity.getContent();
        }
    catch(Exception e){
          Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
        }
          //Convert response to string  
          try
          {
             BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
             sb = new StringBuilder();
             String line = null;
             while ((line = reader.readLine()) != null) 
             {
             sb.append(line + "\n");
             }
             is.close();
             result = sb.toString();
             // Toast.makeText(getBaseContext(),"Song successfully added.",Toast.LENGTH_LONG).show();
             }
             catch(Exception e)
             {
             Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
             }          
             Toast.makeText(this, "Song Added",Toast.LENGTH_SHORT).show();

当我点击列表值意味着该网址已被点击,当时我想退出此活动并返回去?

1 个答案:

答案 0 :(得分:0)

尝试这种方式..根据我的建议,尝试在doInBackground()中使用Asynctask执行所有Web服务代码,并在onPostExecute()中执行剩余的过程,如下所示,

// onItemclick()

     new GetTask().execute();

// GetTask Class

          public class GetTask extends AsyncTask<Object, Void, String> {

             ProgressDialog progdialog;
              @Override
    protected void onPreExecute() {
        super.onPreExecute();

        progdialog = ProgressDialog.show(context, null,
                "loading..");

    }

            @Override
    protected String doInBackground(Object... params) {
         //webservice 

        return null;
    }

    @Override
    protected void onPostExecute(String result) {
        progdialog.dismiss();

                 // finish the activity..
                //   if you start this activity without finishing then call as 
                     finish();
                // if not 
                    Intent in=new Intent(currentclass.this,nextactivity.class);
                     startActivity(in);
                    finish();


        super.onPostExecute(result);
    }


          }

alertdialog:

             new AlertDialog.Builder(AccountListActivity.this)
    .setTitle("Title")
    .setMessage(message))
    .setPositiveButton(ok), new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog,int which) {
    Intent in = new Intent(currentClass.this,nextactivity.class);
        startActivity(in);
    }
    }).show();

它可能对你有帮助......