webview textize用于不同的屏幕分辨率

时间:2015-11-13 06:00:39

标签: android webview

我在我的Android应用程序中实现Web视图以获取动态文本。但问题是不同屏幕尺寸的文字大小更大/更小。如何解决这个问题?我这样使用..

webSettings.setDefaultFontSize(20);

2 个答案:

答案 0 :(得分:1)

    public static int dp2px(Context context, float dpVal){
        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                dpVal, context.getResources().getDisplayMetrics());
    }
webSettings.setDefaultFontSize(dp2px(context,20)/webview.getScale());
or:
webSettings.setDefaultFontSize(dp2px(context,20)*webview.getScale());

答案 1 :(得分:0)

你应该让你的字体大小为px(像素)或dp(与密度无关的像素)。只需使用像素,因为它在每个屏幕上始终为20像素,不会改变。如果使用dp,屏幕大小将根据像素密度而变化,文本大小可能会发生变化。所以你的代码看起来像这样

webSettings.setDefaultFontSize(20px);

阅读本文:What is the difference between "px", "dp", "dip" and "sp" on Android?