Android: остановка потока при использовании Alert Dialog - PullRequest
0 голосов
/ 08 августа 2011

У меня есть программа, которая сначала определяет, присутствует SD-карта или нет, если SD-карта отсутствует, отображается диалоговое окно с предупреждением, в котором пользователю предлагается повторить попытку или выйти. Короче говоря, sd-карта обязательна. Однако в случае, когда нет sd-карты, приложение продолжает работать с потоком или поток продолжает работать даже после перехода в диалоговое окно предупреждения моего приложения. Короче говоря, я хочу, чтобы мое приложение ожидало alerttdialog и получило информацию от пользователя.

Может ли кто-нибудь помочь мне здесь .. спасибо

1 Ответ

0 голосов
/ 08 августа 2011

Я не совсем понимаю вашу проблему, я думаю, что следующий код поможет вам немного. Он ждет, пока нажмется ОК

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Please try again.").setPositiveButton("OK", dialogClickListener).show();
DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        switch (which){
        case DialogInterface.BUTTON_POSITIVE:
            //OK  button clicked,  Add your code here

            break;


        }
    }
};

Отредактировано: если вы вызовите alertBox из потока, он не будет работать. Вы должны вызывать alertDialog из потока пользовательского интерфейса
runOnUiThread(new Runnable() { @Override public void run() { } });

...