我在我的Android应用程序中实现Web视图,以获取动态文本。但问题是在不同的屏幕大小上,文本大小会变得更大/更小。如何解决这个问题?我是这样使用的...
webSettings.setDefaultFontSize(20);
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());
你应该将字体大小设置为px(像素)或dp(密度无关像素)。只需使用像素,因为在每个屏幕上它始终是20像素,不会改变。如果使用dp,则屏幕大小将根据像素密度而变化,文本大小可能会改变。所以你的代码应该像这样:
webSettings.setDefaultFontSize(20px);