我正在寻找有关WebView Android应用的解决方案。我想在屏幕显示网页不可用时显示图像。我试图寻找解决方案,但他们没有工作。请帮助我。
在MainActivity.java中
myWebView.setWebViewClient(new WebViewClient(){
@Override
public void onReceivedError (WebView view, WebResourceRequest request, WebResourceError error){
super.onReceivedError(view, request, error);
findViewById(R.id.customError).setVisibility(View.VISIBLE);
}
});
并在activity_main.xml
中<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context="com.example.android.myapplication.MainActivity">
<ImageView
android:id="@+id/splashLoading"
android:contentDescription="@null"
android:scaleType="centerCrop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible"
android:src="@mipmap/splash_loading"
/>
<ImageView
android:id="@+id/customError"
android:contentDescription="@null"
android:scaleType="centerCrop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible"
android:src="@drawable/ic_error"
/>
<WebView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/activity_main_webview" />
</LinearLayout>
答案 0 :(得分:1)
一种简单的方法是在ImageView
中设置WebView
和RelativeLayout
,并将imageView
保持在webView
之上。最初保持imageView
不可见,并在onReceivedError
方法中,使imageView
可见。