Как запустить новый класс активности во всплывающем окне AlertDialog, нажав кнопку ОК - PullRequest
6 голосов
/ 02 апреля 2012

Это первое действие, когда пользователи сохраняют свои данные.после нажатия кнопки сохранить Alertdialog спрашивает о ОК или отменитьесли пользователь нажимает ОК, начинается новое действие.

    protected final Dialog onCreateDialog(final int id) {
    Dialog dialog = null;
    switch(id) {
    case DIALOG_ID:
        AlertDialog.Builder builder = new AlertDialog.Builder(AppointInformation.this);
        builder.setMessage("Information saved successfully ! Add Another Info?")
        .setCancelable(false)
        .setPositiveButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {

startActivity(new Intent(((Dialog)dialog).getContext(),CheckPatient.class));    
          }
        })
        .setNegativeButton("Yes", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();
            }
        });
        AlertDialog alert = builder.create(); 
        dialog = alert;
        break;

    default:

    }
    return dialog;
  }

Ответы [ 7 ]

2 голосов
/ 16 апреля 2017

Я знаю, что уже слишком поздно, но я хочу ответить на этот вопрос за помощь другим людям, это работает для меня:

Intent intent = new Intent(getContext(),OtherActivity.class);
                 context.startActivity(intent);

контекст - это контекст текущей деятельности.

1 голос
/ 02 апреля 2012

в вашем коде изменить:

startActivity(new Intent(((Dialog)dialog).getContext(),CheckPatient.class)); 

до

startActivity(new Intent(getBaseContext(),CheckPatient.class)); 

или

startActivity(new Intent(Activityname.this,CheckPatient.class));
0 голосов
/ 02 апреля 2012
    AlertDialog.Builder alert = new AlertDialog.Builder(getApplicationContext());
    alert.setTitle(title);
    alert.setCancelable(false);
    alert.setMessage(message);
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            startActivity(new Intent(YourActivity.this, NewActivity.class));
        }
    });
    alert.show();

Используйте код выше :::

0 голосов
/ 02 апреля 2012

Сделайте что-то вроде ниже для этого.

AlertDialog.Builder myAlertDialog = new AlertDialog.Builder(AndroidAlertDialog.this); myAlertDialog.setTitle("--- Title ---"); 
        myAlertDialog.setMessage("Alert Dialog Message");
         myAlertDialog.setPositiveButton("OK", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface arg0, int arg1) {  
        Intent intent = new Intent(this, NextActivity.class);  
        startActivity(intent);
    }}); 

        myAlertDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
                public void onClick(DialogInterface arg0, int arg1) {  

        // do something when the Cancel button is clicked  
        }}); 

        myAlertDialog.show();
0 голосов
/ 02 апреля 2012

используйте этот код

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Are you sure you want to exit?")
   .setCancelable(false)
   .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
       public void onClick(DialogInterface dialog, int id) {
            Intent intent = new Intent(PresentActivity.this, NextActivity.class);
            startActivity(intent);
       }
   })
   .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
       public void onClick(DialogInterface dialog, int id) {
            dialog.cancel();
       }
   });
 builder.show();
0 голосов
/ 02 апреля 2012

При нажатии кнопки ОК или Отмена вы можете написать это,

Intent intent = new Intent(this, NewActivity.class);
startActivity(intent);
0 голосов
/ 02 апреля 2012

Это должно сработать

Intent intent = new Intent(this, NewActivity.class);
startActivity(intent);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...