如何使文本适合屏幕(文本换行)在WebView与KitKat

我在Android 4.4中使用WebView时遇到问题。 在KitKat之前,文字在网页浏览中自动适应所有设备的分辨率。 但是现在不再适合4.4了。 我认为这是因为基于Chromium和KitKat的WebView更新。

以下是同一页的两张截图:

一个来自Galaxy Nexus(Android 4.3)

一个来自Nexus 5(Android 4.4和基于Chromium的WebView)

你知道是否有一个新的select,以适应webview中的屏幕文字?

注:我不认为我的布局是与我的问题有关,但在这里它是无论如何:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <WebView android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout> 

Solutions Collecting From Web of "如何使文本适合屏幕(文本换行)在WebView与KitKat"

看起来这是使用NARROW_COLUMNS 。 这在KitKat中已被弃用 。

但是,新增了一个可以解决这个问题的布局algorithm,这里有一个例子: https//github.com/GoogleChrome/chromium-webview-samples

主要代码是:

 // Use WideViewport and Zoom out if there is no viewport defined settings.setUseWideViewPort(true); settings.setLoadWithOverviewMode(true); settings.setLayoutAlgorithm(LayoutAlgorithm.TEXT_AUTOSIZING); 

另一个选项是启用缩放:

 // Enable pinch to zoom without the zoom buttons settings.setBuiltInZoomControls(true); if(Build.VERSION.SDK_INT > Build.VERSION_CODES.HONEYCOMB) { // Hide the zoom controls for HONEYCOMB+ settings.setDisplayZoomControls(false); } 

新的布局algorithm可能无法解决所有的问题,并且不清楚如何可靠地模仿旧的包装行为。

大多数反对意见似乎是在手机上显示桌面网站的一般浏览器问题。 他们喜欢旧的方式,但我没有看到其他浏览器做文本包装algorithm正在做什么。