Отключить Диалог Android - PullRequest
       4

Отключить Диалог Android

1 голос
/ 20 декабря 2011

Я использую это диалоговое окно с предупреждением:

public  void displayAlert() 
        { 
         new AlertDialog.Builder(getActivity()).setMessage(R.string.invitenotice)   
               .setTitle("Invite Notice")   
               .setCancelable(true)   
               .setNeutralButton(android.R.string.ok,   
                  new DialogInterface.OnClickListener() {   
                  public void onClick(DialogInterface dialog, int whichButton){ 
                     finish();
                  }   
                  })   
               .show();  
        } 

моя проблема в том, что когда я нажимаю кнопку ОК, я не хочу использовать finish ();Я просто хочу закрыть диалог.Любая помощь приветствуется.Или, может быть, более простой способ создания простого диалогового окна при нажатии кнопки?Спасибо всем.Кроме того, проблема в том, что я получаю 4-6 экземпляров диалогового окна.Так что мне нужно нажать ОК 4-6 раз, пока он не исчезнет.Где я помещаю слушателя в мою кнопку, здесь:

   findViewById(R.id.mainHelp).setOnTouchListener(new OnTouchListener() { 
            @Override 
            public boolean onTouch(View v, MotionEvent event) { 
                               displayAlert(); 
                   return false; 
}}); 

в методе onCreate ()

Ответы [ 5 ]

4 голосов
/ 20 декабря 2011

remove finish () Действие по умолчанию - dismiss. так что ничего не вставляйте в click ().

3 голосов
/ 20 декабря 2011

Просто установите null в качестве слушателя, диалоговое окно закроется.

2 голосов
/ 20 декабря 2011

Вы можете вызвать dialog.dismiss(); внутри вашего onClick метода.

1 голос
/ 20 декабря 2011

Обрабатывать сценарий для диалогового окна следующим образом

@Override
public void onClick(DialogInterface dialog, int which)
{
    // TODO Auto-generated method stub
    switch (which)
    {
        case DialogInterface.BUTTON_NEUTRAL:
            break;
    }
}

При щелчке ОК диалоговое окно автоматически закрывается.

0 голосов
/ 29 декабря 2012

Как насчет

            AlertDialog alertDialog;
    alertDialog = new AlertDialog.Builder(this).create();
    alertDialog.setTitle("Error!");
    alertDialog.setMessage("Test!");
    alertDialog.show();
    alertDialog.setButton(3,"Yes", new DialogInterface.OnClickListener(){

    @Override
    public void onClick(DialogInterface dialog, int which) {               
            finish();
            }
    });
...