当前位置: 首页 > 知识库问答 >
问题:

如何在用户离线时使用自定义的无互联网连接布局?

袁单鹗
2023-03-14

我一直在尝试使用自定义图像,该图像将在用户离线时显示给用户,并且当用户单击图像时,应该重新加载活动。

P. s我正在使用Bloger API

共有2个答案

史修明
2023-03-14

您可以使用全屏自定义对话框来检查互联网。所以,你可以写,

if(isNetworkAvailable()){
        //Your Logic for Internet Connection
 }else {
    val noInternetDialog = Dialog(this, android.R.style.Theme)
    noInternetDialog.requestWindowFeature(Window.FEATURE_NO_TITLE)
    noInternetDialog.setContentView(R.layout.no_internet_layout)
    val window = noInternetDialog.window
    window.setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)
    // What ever you have widget, can use them here.
    //for example
    val button_try_again = noInternetDialog.findViewById(R.id.buttonId)
    val image_to_display = noInternetDialog.findViewById(R.id.imageId)
    // listeners for image

    noInternetDialog.show
 }

isNetworks Avaibale()是,

fun isNetworkAvailable(): Boolean {

        val connectivityManager = ApplicationInit.getAppContext()
                .getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
        val activeNetworkInfo = connectivityManager.activeNetworkInfo
        return activeNetworkInfo != null && activeNetworkInfo.isConnected
    } 

PS:不要忘记添加Internet权限

梁祯
2023-03-14

首先添加此权限以显示

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

在你的活动中变薄

private boolean isNetworkAvailable() {
    ConnectivityManager connectivityManager 
          = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
    return activeNetworkInfo != null && activeNetworkInfo.isConnected();
}

并像这样使用

if(isNetworkAvailable()){
//internt connect
}else{
// no network 
//you can show image here by adding layout and set visibility gone and when no connection set visible
}
 类似资料:
  • Android我的设备与wifi连接,但如果wifi已连接,但这些没有互联网连接,该怎么做 以下是我尝试检查是否没有互联网连接的代码 当无法访问互联网时,它总是返回true

  • 问题内容: 我想看看是否有人在使用Java时有一种简单的方法来检测是否存在Internet连接。当前的应用程序在Windows的WinInit DLL中使用了“InternetGetConnectedState”方法,但是我的应用程序需要跨平台才能进行Mac操作,并且这种方法将无法使用。我完全不知道JNI可以在Java中使用DLL,它很快变得令人沮丧。 我唯一想到的方法是尝试打开与网站的URL连接

  • 问题内容: 当我尝试在iPhone上检查互联网连接时,出现了很多错误。谁能帮我解决这个问题? 代码: 代码错误: 如果无法读取,则错误1表示: “ Int”不可转换为“ SCNetworkReachabilityFlags” 错误2和3: 找不到接受提供的参数的’init’的重载 问题答案: 为了解决注释中提到的4G问题,我已使用@AshleyMills可达性实现作为参考并重写了Swift 3.1

  • 以编程方式将我的用户重定向到另一个活动的最佳方法是什么?我研究的大多数代码都在使用已弃用的资源,有些代码再次不起作用,它们也只能在按钮单击时工作? 当用户到达我的启动屏幕时,如果系统检测到他们没有连接到互联网,它会自动重定向到我指定的活动。 注意:这不是重复的资源,我已经检查了Stackoverflow上的其他资源,其中许多只谈到了如何检查连接,当系统检查互联网未在API 30中连接时,那些要进行

  • 若要使用PS Vita与互联网连接,需先准备无线通信的环境。 若您的住家等地无法通过无线通信,可使用公众无线LAN服务(Hotspot)在公众场所与互联网连接。 公众无线LAN服务的使用方法与费用会因该服务的提供者而异。详细请询问该服务的提供者。 使用Wi-Fi连接 若要使用Wi-Fi与互联网连接,需准备以下内容。此外,接入点的设定通常会通过电脑进行。 与网络服务商签订合约 接入点或无线路由器 接

  • 问题内容: 这就是我在香草javascript中检查互联网连接的方式: 我的项目中有角度控制器和模块。我应该在上面的代码放在哪里?它应在全局上下文中执行,而不应分配给某个控制器。也许有某种全局控制器? 问题答案: 首先,我建议您听在线/离线活动。 您可以在AnguarJS中以这种方式进行操作: 注意:我在方法中包装了根范围变量的更改,以通知Angular某些更改。 之后,您可以: 在控制器中: 在