android:警报对话框不等待输入

标签 android android-alertdialog wait

我有一个 Android 应用程序,可以扫描 SD 卡并播放位于 SD 卡上的文件。但是,我想先检查 SD 卡是否在插槽中,然后才能继续处理。但是,警报对话框不会等待输入并继续处理后台,这会出现错误,因为没有 SD 卡并且后台处理尝试访问该 SD 卡。我想等到完成警报对话框。有什么办法可以做到这一点吗?这是警报对话框的代码。我只想让程序等待,直到用户选择该选项..

String state = Environment.getExternalStorageState();
    if (state.equalsIgnoreCase("mounted"))
    {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setMessage("The SD Card has been removed from your device. Please re-insert the SD card and try again")
       .setCancelable(false)
       .setPositiveButton("Retry", new DialogInterface.OnClickListener() {
           @Override
           public void onClick(DialogInterface dialog, int id) 

           {

              onRecreate();

           }
       })
       .setNegativeButton("Exit", new DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int id) 
           {
               dialog.cancel();
             //  onDestroy();
               finish(); 
           }
       })

       .setTitle("No SD-card Found")
       .setIcon(R.drawable.alert_dialog_icon_m);
        AlertDialog alert = builder.create();
        alert.show();   

    return 0;
    }//IF condition closes   
    else
    return 1;

最佳答案

在用户按下对话框的按钮之一之前不要执行任何操作。由于如果未安装 SD 卡,您无能为力,因此只需单击“请安装 SD 卡以继续”和“确定”按钮即可 finish()-es Activity 。

关于android:警报对话框不等待输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6983213/

相关文章:

javascript - jQuery:fadeIn、slideDown 或类似内容的延迟

android - 在 MPAndroidChart 中实现具有可变切片大小的饼图

android - Android SQL错误,将无法创建表

android - Crashlytics Android Studio 的 Gradle 构建错误

android - 按下 BACK 键时从后台弹出 fragment

子进程不打印任何内容

JAVA - Selenium WebDriver - 断言和等待

android - 单击按钮时如何防止对话框关闭

android - AlertDialog 的自定义主题不起作用

Android 6.0 对话框文本不出现