android - 当设备的操作栏/状态栏向下滚动时,警报对话框消失

标签 android android-actionbar android-alertdialog

初始屏幕 Activity 是全屏的,我正在使用以下链接检查互联网连接:

http://www.androidhive.info/2012/07/android-detect-internet-connection-status/

我已经为 alertdialog RETRY 和 CLOSE 实现了 2 个按钮。在关闭点击我终止应用程序。 重试时单击调用功能以检查互联网连接。 当我尝试通过下拉设备的操作栏/状态栏来连接到互联网时,警报对话框消失了。

我的 Internet 检查功能是在 oncreate 函数的 setcontentview 之后调用的。

以下是我的代码:

Inside on create function
cd = new ConnectionDetector(getApplicationContext());
checkInternet();


public void checkInternet()
{
    Log.i("INTERNET CONNECTION CHECKING", "CHECKING INTERNET CONNECTION");
    // get Internet status
    isInternetPresent = cd.isConnectingToInternet();

    if (isInternetPresent) 
    {
        // Internet Connection is Present
        // make HTTP requests
        //showAlertDialog(SplashScreenActivity.this, "Internet Connection", "You have internet connection", true);
    } 
    else 
    {
        // Internet connection is not present
        // Ask user to connect to Internet
        showAlertDialog(SplashScreenActivity.this, "No Internet Connection",
                "Please Retry or close.", false);
    }
}

public void showAlertDialog(Context context, String title, String message, Boolean status) 
{
    AlertDialog alertDialog = new AlertDialog.Builder(context).create();

    // Setting Dialog Title
    alertDialog.setTitle(title);

    // Setting Dialog Message
    alertDialog.setMessage(message);

    // Setting alert dialog icon
    //alertDialog.setIcon((status) ? R.drawable.success : R.drawable.fail);

    // Setting OK Button
    alertDialog.setButton(DialogInterface.BUTTON_POSITIVE,"RETRY", new DialogInterface.OnClickListener() 
    {
        public void onClick(DialogInterface dialog, int which) 
        {
            checkInternet();
        }
    });

    alertDialog.setButton(DialogInterface.BUTTON_NEGATIVE,"CLOSE", new DialogInterface.OnClickListener() 
    {
        public void onClick(DialogInterface dialog, int which) 
        {
            //finish();
             android.os.Process.killProcess(android.os.Process.myPid());
        }
    });

    // Showing Alert Message
    alertDialog.show();
}

最佳答案

尝试移除 Splash Screen 的全屏模式,这样您就可以直接访问设备的状态栏

关于android - 当设备的操作栏/状态栏向下滚动时,警报对话框消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23788622/

相关文章:

android - 在android中从服务器异步获取图像?

android - 我的 native C++ Android 程序中缺少 glShaderModel 库

android - 使图像以循环方式消失

android - 如何将 SearchView onBackPressed() 中的行为与主页向上导航相匹配

android - ActionBar.setDisplayHomeAsUpEnabled(true) 空指针异常

java - BroadcastReceiver 中的 AlertDialog??可以吗?

android - 我应该在哪里添加我的 alertdialog 以及如何获取 json 中的值?

android - 带有 StickyListHeaders 的 SwipeActionAdapter

android - 如何在 ActionBar(Android) 中添加按钮?

android - 在日期选择器中禁用 future 日期选择