2013-03-04 138 views
11

我有一个静态html文件“myhtml.html”存储在我的assets/html /目录中,并且此html加载自定义字体(存储在assets/fonts /下)如下:在Android 4.2(API 17)中加载自定义字体的问题

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

我使用下面的代码加载这个网站:

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); 

此代码工作正常所有的Android版本的Android除外4.2(API 17)。

在Android 4.2中,加载了HTML,但未加载自定义字体。

+1

同样的问题在这里 – 2013-03-20 06:13:07

+0

事实上,这用于API 17工作。我怀疑它是与最新的补丁更新中断。 – Christopher 2013-04-18 19:03:20

+0

同样的问题在这里。 – 2013-05-15 16:23:17

回答

1

请使用(svg字体)。它适用于我

0

我有同样的问题。更改

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

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

修复该问题。