【问题标题】:WebView won't scroll for certain web pageWebView 不会滚动某些网页
【发布时间】:2014-11-17 12:07:54
【问题描述】:

我正在尝试在我的 WebView 上加载 Time.com

加载本身工作正常,但加载的页面不可滚动。

  1. 与内置浏览器、chrome浏览器配合良好
  2. 如果我使用其他网址(例如http://www.google.com/),它可以正常工作。

我认为问题出在网页(html)中,但我无法弄清楚问题所在。

下面是代码,虽然没什么特别的。

MainActivity.java

package com.yooiistudios.webviewperformance;

import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.webkit.WebView;
import android.webkit.WebViewClient;


public class MainActivity extends ActionBarActivity {

    private WebView mWebView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mWebView = (WebView)findViewById(R.id.webView);
        mWebView.setWebViewClient(new NewsWebViewClient());
        mWebView.loadUrl("http://www.time.com/");
    }

    private class NewsWebViewClient extends WebViewClient {

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
}

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:tools="http://schemas.android.com/tools"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:paddingLeft="@dimen/activity_horizontal_margin"
                android:paddingRight="@dimen/activity_horizontal_margin"
                android:paddingTop="@dimen/activity_vertical_margin"
                android:paddingBottom="@dimen/activity_vertical_margin"
                tools:context=".MainActivity">

    <WebView
        android:id="@+id/webView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</RelativeLayout>

【问题讨论】:

  • 我也有同样的问题。

标签: android html webview


【解决方案1】:

经过一番研究,我发现 HTML5WebView 适合我的情况。

还有一个问题,网页中的某些视频无法在默认的 android webview 上播放,而 HTML5WebView 也解决了这个问题。

它自己的源代码有点脏和杂乱,它工作正常。

无论如何,我在这里留下一个链接。希望这对有同样问题的人有所帮助。

链接:https://code.google.com/p/html5webview/source/browse/trunk/HTML5WebView/src/org/itri/html5webview/HTML5WebView.java

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多