我正在尝试加载网页,但我希望用户看到页面加载但在页面加载之前无法与其进行交互。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<WebView
android:id="@+id/mainWebview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<LinearLayout
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:background="#40606060"
/>
我只是觉得我在它上面放了一个半透明的灰色层,当页面加载时我会隐藏它。我认为我需要的是某种容器内的两个视图。这篇文章(Can I overlap the WebView
with an ImageButton
?)有一个类似的问题,但当我使用WebView
时,我仍然可以通过滚动进行互动。所以我一直在使用WebView
和LinearLayout
(我也在ImageView
内尝试了FrameLayout
(我也试过了GridLayout
)。
在这两种情况下,我都可以像我想要的那样覆盖WebView
,但我仍然可以通过用手指滚动来与Webview
进行交互,我不希望这样。在HTML中,我只是将一个DIV放在另一个DIV之上,它可以实现这一点,但我不确定如何使用Android进行等效。
感谢您的帮助!
答案 0 :(得分:1)
只需将LinearLayout
设为陈词滥调=&#34; true&#34;
<LinearLayout
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:background="#40606060"
android:clickeable="true"
/>
答案 1 :(得分:0)
您可以按如下方式实施WebViewClient
并扩展onPageFinished()
:
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
// do your stuff here
}
});
您可以在WebView
开始加载页面时显示进度对话框,并取消ProgressBar
onPageFinished()
方法。
告诉我你是否还有任何疑问......