Пример диалогового окна в Android - PullRequest
3 голосов
/ 16 мая 2011

Я хочу, чтобы при нажатии кнопки отображалось диалоговое окно.Вот мой код, но он не работает.

AlertDialog.Builder builder = new AlertDialog.Builder(
                        getApplicationContext());
                builder.setCancelable(true);
                builder.setTitle("Title");
                builder.setInverseBackgroundForced(true);
                builder.setPositiveButton("Yes",
                        new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                dialog.dismiss();
                            }
                        });
                builder.setNegativeButton("No",
                        new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                dialog.dismiss();
                            }
                        });
                AlertDialog alert = builder.create();
                alert.show();

Ответы [ 4 ]

7 голосов
/ 18 августа 2012

попробуйте это,

вместо передачи getApplicationContext () передайте это;

AlertDialog.Builder builder = new AlertDialog.Builder(this);
3 голосов
/ 08 апреля 2013

попробуйте это:

AlertDialog.Builder builder = new AlertDialog.Builder(YourActivityName.this);
0 голосов
/ 14 июня 2013

Это очень старая запись, однако я создал класс, который, как мне кажется, может помочь сохранить код в чистоте

https://github.com/houmanka/DialogMaker

Вам не нужно беспокоиться о OnClickListener, о котором все заботятся. Просто переопределите методы, и все готово. Также я поставил поддержку Standard и Neutral тоже.

Приветствия

Надеюсь, это кому-нибудь поможет. H.

0 голосов
/ 22 июня 2012

попробуйте

AlertDialog.Builder builder = new AlertDialog.Builder(getApplicationContext());
...