在我的应用程序中我使用webview,为了增加/减少文本大小,我使用的是WebSettings()。setTextSize方法,但是,此方法仅限于5个预定义的枚举大小(SMALLEST,SMALLER,NORMAL ,LARGER,LARGEST)。我知道我可以使用WebSettings()。setTextZoom(int),但我的应用程序可用于API Level 8及更高版本,此方法在API Level 14中引入。
我的问题是:有没有办法在webSettings()中添加其他大小.setTextSize?可能通过扩展textSize枚举,或定义其他大小?
顺便说一句: WebSettings.setDefaultFontSize(int size)不起作用,可能是因为我使用的网页包含一个大的CSS文件......
答案 0 :(得分:0)
您可以在pageloadfinished上将css代码注入您的应用程序,并使用它更改文本大小。
使用css inject将背景颜色更改为渐变的示例:
public void onPageFinished(WebView view, String url) {
//styling
webview.loadUrl("javascript:(function() { " +
"document.getElementsByTagName('body')[0].style.background = '-webkit-gradient(linear, 0% 0%, 0% 100%, from(#143b8a), to(#266af3))'; " +
"})()");
}