将Android WebView文字大小匹配到TextView文字大小

Mat*_*son 5 android textview webview

是否有一种简单的方法(可能是非编程的?)将WebView中的文本大小与TextView中的文本大小进行匹配?

我有一个(XML指定的)TextView,它没有文本大小或外观属性:

<TextView
    android:id="@+id/lblExerciseSummary"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/lblWeekTitle"
    android:textColor="@color/home_screen_text_colour"
    android:paddingBottom="4dp"
    android:paddingLeft="4dp" />
Run Code Online (Sandbox Code Playgroud)

还有一个没有文本大小或外观属性的WebView:

<WebView
    android:id="@+id/wvTest"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/lblRunDescription"
    android:layout_below="@+id/lblTest"
    android:background="#00000000" />
Run Code Online (Sandbox Code Playgroud)

当我将文本放入TextView(使用setText())和HTML放入WebView(具有loadData()并将文本本身放入<p>没有设置额外CSS / inline样式的元素中)时,两个视图以不同大小显示文本( WebView的默认大小似乎比TextView大)。

确保我的WebView文本的大小始终与TextView文本始终匹配的最佳方法是什么?是否很幸运,即使它是相同的字体,也可以吗?

我猜想TextView从主题/样式/设备设置中选取了一些默认值,但我也猜想WebView具有某种默认样式表,可能不会选择相同的设置?

Chi*_*ose 0

setTextZoom()马特,你可以尝试使用你的方法WebView

thisWB.getSettings().setTextZoom(thisTV.getTextSize());
Run Code Online (Sandbox Code Playgroud)

thisWB: 你的WebView

thisTV:您的TexView,您将从那里获得文本大小WebView

请注意,该方法setTextZoom(int textZoom)是 API 级别 14(如果您正在开发适用于 Android 4.0+ 的应用程序,请使用它)。

链接:网页设置