在android中添加第三方字体方法

时间:2012-11-30 07:42:29

标签: android fonts

我在android中添加了第三方字体。我把字体放在assets / fonts / qqqq.ttf

的根目录中
type=Typeface.createFromFile("@assets/fonts/hwxk.ttf"); 
 tv=(TextView) findViewById(R.id.index_grid_detail_text);
 tv.setTypeface(type);

但它有如下错误:无法制作原生字体。

有什么问题?谁知道这个?非常感谢!

2 个答案:

答案 0 :(得分:1)

更改代码,就像在Project:

中将字体放在资产目录中一样
Typeface type= Typeface.createFromAsset(getAssets(),"fonts/hwxk.ttf");
tv=(TextView) findViewById(R.id.index_grid_detail_text);
tv.setTypeface(type);

和从Sdcard创建自定义字体将代码更改为:

Typeface type= Typeface.createFromFile(new File(Environment.getExternalStorageDirectory(), "/assets/fonts/hwxk.ttf"));
tv=(TextView) findViewById(R.id.index_grid_detail_text);
tv.setTypeface(type);

AndroidManifest.xml文件中添加SD卡权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

答案 1 :(得分:1)

setContentView();之后写下面的代码而不是代码,可能会解决您的问题。

// text view label
TextView mTextView1 = (TextView) findViewById(R.id.TextView1);

// Loading Font Face
Typeface tf = Typeface.createFromAsset(getAssets(), "DroidSansFallback.ttf");

// Applying font
mTextView1.setTypeface(tf);

请参阅以下链接以获取更多信息。

Customize Android Fonts

相关问题