我想在我的Android应用中使用自定义字体。我按照说明在Android工作室中创建了一个assets
文件夹,其中我放了verdana.ttf
,如图所示:
然后我在MainActivity
活动中调用以下内容:
public class MainActivity extends ActionBarActivity {
Typeface mainFont = Typeface.createFromAsset(getAssets(), "verdana.ttf");
代码编译,但是当活动启动时,我在上面的行中得到NullPointerException
。我怀疑verdana.ttf
文件可能已损坏,但尝试使用不同的字体时错误仍然存在。清洁项目也无济于事。资产文件夹位于错误的位置吗?我可能做错了什么?
答案 0 :(得分:3)
您正尝试从初始化程序中调用createFromAsset()
。请在onCreate()
电话后将其移至super.onCreate()
。您在Activity
中继承的方法可能在此之前无效。