如何将网页不可用页面替换为自定义页面? (WEBVIEW) [英] How to Replace Webpage Not Available Page To Custom Page? (WEBVIEW)
问题描述
我想从Webpage not Available
或ERR_NAME_NOT_RESOLVED
要我的页面没有Internet连接" ?
,并具有刷新按钮,可以重新联机(如果已联机或已连接互联网),如果没有连接,请停留在页面无互联网连接中.
and with a refresh button to back online if online or connected internet again, and if didn't connect just stay in Page No Internet Connection.
看起来像页面HTML
,不是默认页面,而不是android
页面,或者像自定义页面这样的调用.
Look like a page HTML
not default notif page android
or maybe this call like Custom Page.
我将Android Studio
与Kotlin
一起使用
这是MyActivity
class MainActivity : AppCompatActivity() {
internal var webView: WebView? = null
private var mCM: String? = null
private var mUM: ValueCallback<Uri>? = null
private var mUMA: ValueCallback<Array<Uri?>>? = null
//select whether you want to upload multiple files (set 'true' for yes)
private val multiple_files = false
@SuppressLint("SetJavaScriptEnabled", "WrongViewCast")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
webView = findViewById(R.id.ifView) as WebView
assert(webView != null)
val webSettings = webView!!.settings
webSettings.javaScriptEnabled = true
webSettings.allowFileAccess = true
if (Build.VERSION.SDK_INT >= 21) {
webSettings.mixedContentMode = 0
webView!!.setLayerType(View.LAYER_TYPE_HARDWARE, null)
}
else {
webView!!.setLayerType(View.LAYER_TYPE_SOFTWARE, null)
}
webView!!.webViewClient = Callback()
webView!!.loadUrl("http://xxx.xxx.xxx") //add your test web/page address here
webView!!.setWebChromeClient(object : WebChromeClient()
}
这是我的代码Callback
inner class Callback : WebViewClient() {
override fun onReceivedError(view: WebView, errorCode: Int, description: String, failingUrl: String) {
Toast.makeText(applicationContext, "Failed loading app!", Toast.LENGTH_SHORT).show()
}
}
可以肯定的是,我的应用程序希望加载webview
离线的离线页面,以通知应用程序没有连接互联网,并在webview
在线时再次连接到显示在线页面的互联网
For sure, my apps want load offline page where webview
offline to notif the apps didn't connect internet, and connect again to the internet showing online page when webview
online
推荐答案
您可以添加loadUrl
来调用asset
文件夹中的自定义页面.
更改名称页的页面名称.
You can add loadUrl
to call custom page in asset
folder.
Change the page name of your name page.
inner class Callback : WebViewClient() {
override fun onReceivedError(view: WebView, errorCode: Int, description: String, failingUrl: String) {
Toast.makeText(applicationContext, "No Internet Access!", Toast.LENGTH_SHORT).show()
view.loadUrl("file:///android_asset/nameofyourpage.html")
}
}
这篇关于如何将网页不可用页面替换为自定义页面? (WEBVIEW)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!