【发布时间】:2013-03-20 19:50:41
【问题描述】:
在我的应用程序中,我有一个定义为“18sp”的字体尺寸。此字体大小用于 TextView(作为标题)和 WebView(作为正文)。在 mdpi 设备上,两种字体看起来大小相同;但是在 nexus 10 (xhdpi) 上,TextView 看起来正确,而 WebView 大小翻了一番。我正在使用
在 webview 上设置文本大小int fontSize = res.getDimensionPixelSize(R.dimen.textSize);
然后在正文中使用 css 设置字体:
<body style='font-size: " + fontSize + "px'>
很明显为什么文本大小加倍 - xhdpi 设备上的 18sp 变成 36px - 但我很困惑为什么这是由 TextView 而不是由 WebView 自动处理的。我可以想出几种方法来处理这个问题,但我不知道哪种方法(如果有的话)是正确的:
- mdpi 和 xhdpi 设备的不同字体大小
- 将 WebView 的默认缩放设置为 100 / displayMetrics.scaledDensity
- 将字体大小设为绝对整数(例如 18sp 等于 18)并将字体大小设置为该数字。
有什么想法吗?谢谢
【问题讨论】:
标签: android android-webview font-size