-1
我有一個加載了HTML數據的webview。我希望能夠在運行時更改HTML的字體。爲此我有一個用戶可以選擇字體的設置(字體取自/ system/fonts目錄)。Android - 動態更改webview自定義字體
我如何申請所選字體的網頁流量?
我想這通過使用javascript:
String fontString = "font-family: 'myFont'; url: /system/fonts/DroidSans.ttf;";
if (android.os.Build.VERSION.SDK_INT < 19) {
webview.loadUrl("javascript:changeStyle('body', '" + fontString + "')");
} else {
webview.evaluateJavascript("javascript:changeStyle('body', '" + fontString + "')", null);
}
隨着在HTML的javascript定義changeStyle():
function changeStyle(tag, style) {
var myList = document.getElementsByTagName(tag); // get all p elements
var x = myList.length;
myList[0].setAttribute("style", style);
}
這一點,但是,不能正常工作。我很確定changeStyle()js-function沒有問題,因爲它正在設置字體大小或顏色。
這並不能解釋如何將系統字體應用到web視圖。例如Arial不是系統字體之一。如果我把roboto作爲字體,沒有任何反應。 – Skywalker10 2015-02-10 11:17:17
如何使用自定義字體是一個不同的問題!這個答案解釋瞭如何動態地正確應用字體..如果你想學習如何使用自定義字體閱讀這個http://www.w3schools.com/cssref/css3_pr_font-face_rule.asp,或者你可以包含相應的字體文件你的項目。 – 2015-02-10 11:31:09