gpt4 book ai didi

java - 如何实现当网络或WiFi连接时对话框消失。反之亦然?

转载 作者:行者123 更新时间:2023-11-29 04:08:48 24 4
gpt4 key购买 nike

我为我的 Android 应用构建对话框。它运行良好,但我遇到了一些与对话框相关的问题。

(1) 我想要互联网连接或 WiFi 连接时。对话框自动消失。

(2) 如果互联网连接丢失,应用程序正在运行。对话框再次自动出现。

if (!isConnected(Dashboard.this)) buildDialog(Dashboard.this).show();
else {
setContentView(R.layout.activity_dashboard);
}
public boolean isConnected(Context context) {

ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netinfo = cm.getActiveNetworkInfo();

if (netinfo != null && netinfo.isConnectedOrConnecting()) {
android.net.NetworkInfo wifi = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
android.net.NetworkInfo mobile = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

if ((mobile != null && mobile.isConnectedOrConnecting()) || (wifi != null && wifi.isConnectedOrConnecting()))
return true;
else return false;
} else
return false;
}

public AlertDialog.Builder buildDialog(Context c) {

AlertDialog.Builder builder = new AlertDialog.Builder(c);
builder.setTitle("No Internet Connection");
builder.setMessage("You need to have Mobile Data or WiFi to access this. Press OK to Exit");
builder.setCancelable(false);

builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {

Dashboard.super.onBackPressed();
}
});

return builder;
}

最佳答案

在你的 alear daillog 中使用属性 builder.setCancelable(false);

关于java - 如何实现当网络或WiFi连接时对话框消失。反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56454713/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com