gpt4 book ai didi

android - 无法在 webView 上水平滚动

转载 作者:行者123 更新时间:2023-11-30 00:14:52 28 4
gpt4 key购买 nike

我需要水平滚动和缩放 webView,因为我有一个很大的售票 Canvas ,并且滚动不适用于低于 5.0 的设备,但我需要支持 4.1+ 版本。

这是我的 WebView

    webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadsImagesAutomatically(true);
webView.getSettings().setAllowFileAccessFromFileURLs(true);
webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
webView.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY);
webView.setScrollbarFadingEnabled(false);
webView.setVerticalScrollBarEnabled(true);
webView.setHorizontalScrollBarEnabled(true);
webView.getSettings().setAppCacheEnabled(false);

webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setDisplayZoomControls(false);
webView.setWebChromeClient(new WebChromeClient());
webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
webView.addJavascriptInterface(new MyJavaScriptInterface(getContext()), "HtmlViewer");
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);

// webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
if (Build.VERSION.SDK_INT >= 19) {
webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
}
else {
webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}

// ((GiftsActivity)getActivity()).dismissSpinner();
webView.setWebViewClient(new WebViewClient() {


@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {

view.loadUrl(url);
// view.reload();

return false;
}

@Override
public void onPageFinished(WebView view, String url) {
webView.loadUrl("javascript:HtmlViewer.showHTML" +
"(document.getElementsByTagName('pre')[0].innerHTML);");
}
});

webView.loadUrl(url);
((GiftsActivity)getActivity()).dismissSpinner();

}

和xml

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<WebView android:id="@+id/webViewPosterPlaces"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android" />
</LinearLayout>

我尝试将布局更改为相对布局并将方向更改为水平,我还尝试将 webview 放入 ScrollView 中,但它也不起作用。

顺便说一句,当我在 WebView 中放大时,我也无法水平滚动。垂直滚 Action 为放大正常工作,但缩小也不起作用

问题已解决:

需要删除这一行:webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);

最佳答案

需要删除这一行:webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN)

关于android - 无法在 webView 上水平滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47452795/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com