这个问题在这里已有答案:
我在setDisplayHomeAsUpEnabled
方法下面得到一个NullPointerException警告。
if((getActivity()) != null) {
if(((AppCompatActivity) getActivity()).getSupportActionBar() != null) {
((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(false);
}
}
我该如何解决?
因为你没有检查NullPointerException((AppCompatActivity)getActivity())。getSupportActionBar()给出了actionbar对象
但你是直接打电话的
((AppCompatActivity)getActivity())。getSupportActionBar()。setDisplayHomeAsUpEnabled(false)
这就是系统为NullPointerException提供警告的原因。
if((getActivity()) != null) {
ActionBar actionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();
if(actionBar != null) {
actionBar.setDisplayHomeAsUpEnabled(false);
}
}
把上面的代码。您的警告将被删除。
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(false);
使用工具栏是首选。如果您使用工具栏并设置动作栏,则无需为NullPointerException设置chekc。