2013-12-04 3 views
0

Ниже приведен фрагмент кода для выхода из приложения при нажатии кнопки 2. Когда кнопка нажата, отображается сообщение тоста для выхода из приложения. Я хочу включить «да» и «да», нет "(кнопки подтверждения) в тосте. Может кто-нибудь скажет мне, как это сделать?Добавление кнопки да и нет для выхода

public void addListenerOnButton2() 
{ 
    exit = (Button) findViewById(R.id.button2); 
    exit.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      exme="Are you sure you want to quit?"; 
      Toast t = Toast.makeText(MainActivity.this,exme, 
        Toast.LENGTH_SHORT); 
      t.show(); 
     } 
    }); 
} 
+2

Вы хотите кнопки в сообщении тоста? Вы не можете сделать это. – RossC

+0

действительно ли вы хотите, чтобы это сделать? –

+2

ya..I узнал, что мы не можем сделать это в тосте. Вместо этого мы можем это сделать в диалоговом окне. Спасибо :) – user3035473

ответ

6

Вместо этого вы можете использовать: AlertDialog

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
      MainActivity.this); 

     // set title 
     alertDialogBuilder.setTitle("Your Title"); 

     // set dialog message 
     alertDialogBuilder 
      .setMessage("Click yes to exit!") 
      .setCancelable(false) 
      .setPositiveButton("Yes",new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog,int id) { 
        // if this button is clicked, close 
        // current activity 
        MainActivity.this.finish(); 
       } 
       }) 
      .setNegativeButton("No",new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog,int id) { 
        // if this button is clicked, just close 
        // the dialog box and do nothing 
        dialog.cancel(); 
       } 
      }); 

      // create alert dialog 
      AlertDialog alertDialog = alertDialogBuilder.create(); 

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

Я не мог для жизни меня помнить имя. Справедливая игра для таких деталей! – RossC

+0

, но я получаю сообщение об ошибке, когда я набираю контекст – user3035473

+0

использую ваш MainActivity.this .. –

1

просто поставить ниже код внутри кнопки мыши событие

btnButton2.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
     MainActivity.this); 

    // set title 
    alertDialogBuilder.setTitle("Your Title"); 

    // set dialog message 
    alertDialogBuilder 
     .setMessage("Click yes to exit!") 
     .setCancelable(false) 
     .setPositiveButton("Yes",new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog,int id) { 
       exme="Ok button Pressed"; 
     Toast t = Toast.makeText(MainActivity.this,exme, 
       Toast.LENGTH_SHORT); 
     t.show(); 
       MainActivity.this.finish(); 
      } 
      }) 
     .setNegativeButton("No",new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog,int id) { 
       exme1="Cancel button Pressed"; 
     Toast t1 = Toast.makeText(MainActivity.this,exme1, 
       Toast.LENGTH_SHORT); 
     t1.show(); 
       dialog.cancel(); 
      } 
     }); 

     // create alert dialog 
     AlertDialog alertDialog = alertDialogBuilder.create(); 

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

, но я получаю сообщение об ошибке при вводе контекста – user3035473

+0

Измените его своим именем активности, например, если у вас есть имя вашей деятельности как MainActivity, а затем введите MainActivity. это вместо контекста. – InnocentKiller

+0

@ user3035473 Я обновил свой ответ, вы можете это увидеть. – InnocentKiller

Смежные вопросы