2011-11-03 4 views
0

다음 코드를 사용하여 작업을 마쳤지 만 뒤로 보도 이벤트에서 목록 활동을 마치고 싶습니다. 나에게 사전에 감사합니다 도움이장치에서 뒤로 버튼을 누르면 listActivity를 끝내는 방법

public void onBackPressed() { 
     AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 
      alertDialog.setMessage("Want to exit ?"); 
      alertDialog.setButton("Yes", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int which) { 
        for(Activity activity:activities) 
         activity.finish(); 
      } }); 
      alertDialog.setButton2("No", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int which) { 

      }}); 
      alertDialog.show(); 
    } 
+0

for (활동 활동 : 활동) activity.finish(); - 앱 전반에 걸쳐 활동 목록을 유지하고 있습니까? – Optimus

답변

0

, 그냥 내가 여기에 새로운 코드를 제안하고 .. 아래와 같이 수정해야

public boolean onKeyDown(int keyCode, KeyEvent event) { 
     // TODO Auto-generated method stub 

     if(keyCode==KeyEvent.KEYCODE_BACK){ 
     new AlertDialog.Builder(ProgressController.this).setTitle(
     "Attention").setMessage(
     "Want to exit ?") 
     .setPositiveButton("YES", 
       new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, 
          int which) { 
         finish(); 
        } 
       }).setNegativeButton("NO", 
       new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, 
          int which) { 

        } 
       }).show(); 
     return true; 
     }else{ 
      return false; 
     } 

     //return super.onKeyDown(keyCode, event); 

    } 
0

코드는

나는 당신의 코드를 수정하고 있지 않다
@Override 
    public void onBackPressed() { 
     // TODO Auto-generated method stub 

     AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 
     alertDialog.setMessage("Want to exit ?"); 
     alertDialog.setButton("Yes", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) { 
       finish(); 
     } }); 
     alertDialog.setButton2("No", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) { 

       return; 
     }}); 
     alertDialog.show(); 

    } 
+0

제안이 도움이되지만 내 코드와 동일합니다. – puneet

0

경고 대화 상자에 취소 수신기를 추가하고 그 안에있는 활동을 닫습니다.

alertDialog.setCancelable(true); 
    alertDialog.setOnCancelListener(new DialogInterface.OnCancelListener() { 

     @Override 
     public void onCancel(DialogInterface dialog) { 
      finish(); 
     } 
    }); 
관련 문제