Поведение кода с диалоговым окном оповещения - PullRequest
1 голос
/ 23 ноября 2011

Я просто хотел понять, есть ли в моем методе какой-то код, который отображает диалоговое окно с предупреждением, и после этого какой-то другой код, тогда, когда отображается диалоговое окно с предупреждением, и я не нажал ни одной кнопки, будет ли мой код ниже предупреждения dialog.show () строка, ожидающая отмены диалогового окна, или оно будет просто выполнено, не дожидаясь ответа от диалогового окна предупреждения? Пожалуйста, помогите мне понять это.

AlertDialog.Builder builder = new AlertDialog.Builder(ShowLog.this);
builder.setMessage("Do you really want to delete the "+size+" records?")
    .setCancelable(false)
    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
        //Doing some work          
        }
    })
    .setNegativeButton("No", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();

       }
    });
AlertDialog alert = builder.create();
alert.show();

SomeWork();
Somework1();

Я хочу знать, когда SomeWork (); будет выполнен. Это только после отображения диалогового окна с предупреждением или после нажатия кнопки «Да» или «Нет» в диалоговом окне с предупреждением?

Ответы [ 2 ]

2 голосов
/ 23 ноября 2011

Используйте AsyncTask для выполнения фонового процесса

1 голос
/ 23 ноября 2011

Согласитесь с android_dev, используйте AsyncTask:

  • показать ваш диалог на onPreExecute (...)
  • делать свою работу в doInBackground (...)
  • скрыть диалог на onPostExecute (...)

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

Я думаю, нам нужно больше подробностей ...

...