2013-03-04 7 views
11

Ich habe eine statische HTML-Datei "Myhtml.html" in meinem Assets/html/Verzeichnis gespeichert und diese HTML lädt benutzerdefinierte Schriftart (unter Assets/Fonts/gespeichert) wie folgt :Problem beim Laden benutzerdefinierter Schriftarten in Android 4.2 (API 17)

<style type="text/css"> 
    @font-face { 
     font-family: 'MyFont'; 
     src: url('file:///android_asset/fonts/myfont.ttf'); 
    } 
</style> 

ich diese hTML bin Laden mit dem folgenden Code:

String html = getHtml(); // This method loads the myhtml.html from asset. This loads properly. 
WebView webView = (WebView) findViewById(R.id.webbox); 
WebSettings webSettings = webView.getSettings(); 
webSettings.setDefaultTextEncodingName("utf-8"); 
webSettings.setFixedFontFamily("fonts/myfont.ttf"); 
webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null); 

Dieser Code funktioniert die Android-Versionen außer Android alles in Ordnung 4.2 (API 17).

In Android 4.2 wird der HTML-Code geladen, aber die benutzerdefinierte Schriftart wird nicht geladen.

+1

das gleiche Problem hier –

+0

In der Tat, dies verwendet, um API 17 zu arbeiten. Ich vermute, dass es mit dem letzten Patch-Update gebrochen wurde. – Christopher

+0

Gleiches Problem hier. –

Antwort

1

Bitte verwenden Sie (Svg Schriftart). es funktioniert für mich

0

Ich habe das gleiche Problem. Ändern

webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null); 

zu

webView.loadDataWithBaseURL("http://example.com", html, "text/html", "UTF-8", null); 

behebt das Problem.

Verwandte Themen