将Android WebView文本大小匹配到TextView文本大小
有没有简单的方法(可能是非编程?)将WebView中的文本大小与TextView中的文本大小相匹配?将Android 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" />
而且还具有无文本大小或外观的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" />
当我将TextView(使用setText())和HTML放入WebView中(使用loadData()并将文本本身放置在<p>
元素中,没有额外的CSS /内联样式集),两个视图显示不同大小的文本WebView似乎默认为比T更大的尺寸。extView)
什么是确保我的WebView文本始终在大小TextView的文本相匹配的最佳方式,并有可能在其他外观 - 是它也许只是运气,它是即使是同一字型?
我猜的TextView正在加快从主题/风格/设备设置一些默认值,但我也猜测,web视图具有某种默认样式的可能不是捡了相同的设置?
马特,你可以尝试使用方法setTextZoom()
在WebView
:
thisWB.getSettings().setTextZoom(thisTV.getTextSize());
thisWB
:你WebView
thisTV
:你TexView
,从那里你会得到的文本大小为WebView
请注意,方法setTextZoom(int textZoom)
是API级别14(如果您正在开发适用于Android 4.0+的应用程序,请使用它)。
链接:WebSettings
感谢您的建议。鉴于setTextZoom需要一个百分比,而getTextSize返回一个大小的像素,我不明白这是如何工作,但? (另外,我还在开发API级别8+,最终没什么关系,因为我只是改变了我的方法,以避免混合使用WebView和TextView ......) – 2012-07-26 16:56:39
是你能解决这个问题? – Maragues 2012-05-18 10:35:22
不是。我放弃了使用TextViews来处理我正在做的所有事情。 – 2012-05-18 10:47:02
好的,thx。不适合我。当我(希望)找到解决方案时,我会写一个答案 – Maragues 2012-05-18 11:11:22