刚刚编写了这段代码并且它们都可以单独工作,但现在所有的代码都在说方法调用可能会产生java NullpointerException,例如:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
<code>
{ Typeface myFontView = Typeface.createFromAsset(getAssets(), "alexBrush_regular.tff");
TextView myTextView = (TextView)findViewById(R.id.TextView1);
myTextView.setTypeface(myFontView);
}
{ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
{ TextView txt1 = (TextView) findViewById(R.id.TextView1);
txt1.startAnimation(AnimationUtils.loadAnimation(splashActivity.this, android.R.anim.slide_out_right));
Handler splashHandler = new Handler();
splashHandler.postDelayed(this, 5000);
}
}
自从我编写了字体代码后,我的模拟器就停止了工作:
{Typeface myFontView = Typeface.createFromAsset(getAssets(), alexBrush_regular.tff");
TextView myTextView = (TextView)findViewById(R.id.TextView1);
myTextView.setTypeface(myFontView);
}
我该如何解决这个问题?如果我删除字体代码它可以正常工作,但是当我单独创建一个新项目时代码正常工作
修改 刚刚将文件名更改为ttf,现在它可以正常工作但方法调用可能会产生java仍然存在NullpointerException
答案 0 :(得分:0)
日志中的堆栈跟踪是什么?我怀疑你无法访问getAssets()传递一些代码。
尝试使用:
Typeface.createFromAsset(getContext().getAssets(), alexBrush_regular.tff");
修改强>
资产名称应为:alexBrush_regular.ttf