2010-09-09 108 views
7

我想在android中使用自定義字體。我已經編寫了如下所示的Java代碼。Android中的自定義字體問題

TextView txt = (TextView) findViewById(R.id.customfont); 
Typeface font = Typeface.createFromAsset(getAssets(), "fonts/Molot.otf"); 
txt.setTypeface(font); 

,我已經保存在「./assets/fonts/」文件夾中的自定義字體。

但是,我在第3行得到了nullpointerexception。

有人可以給我這個問題的解決方案嗎?謝謝

回答

7

Android支持only TTF字體類型not OTF。查看此鏈接

"RuntimeException: native typeface cannot be made" when loading font

+1

非常感謝!但我甚至嘗試使用.ttf,但它仍然無法正常工作...仍然會拋出相同的異常 – RATTLESNAKE 2010-09-09 07:53:43

+0

請注意,您輸入的字體名稱區分大小寫。如果你仍然堅持,我可能認爲它應該是你使用的字體文件的問題。嘗試下載一個不同的字體TTF文件並加載它。快速搜索後,我發現這個網站可以將OTF轉換爲TTF。可能是你可以試試http://onlinefontconverter.com/ – DeRagan 2010-09-09 09:30:38

+0

你也可以檢查這個帖子,它有一個與之相關的示例項目... http://stackoverflow.com/questions/3203694 – DeRagan 2010-09-09 09:41:40

1

Android也支持OTF。您的字體可能已損壞。

從www.exljbris.com/delicious.html下載美味字體。這是一種OTF字體,適用於我。

0

試試這個
Typeface font = Typeface.createFromAsset(getAssets(), "/fonts/Molot.otf");