我尝试使用以下代码为ActionBar
设置标题:
@Override
public void onResume() {
((MainActivity) getActivity()).getSupportActionBar().setTitle(getResources().getString(R.string.artist));
super.onResume();
}
但是Android Studio向我显示了这个警告:
我在StackOverflow上搜索它将通过在我的代码前添加此代码if(getSupportActionBar()!=null)
来修复。但它导致我的脚本出错。
我不知道如何解决这个问题。
答案 0 :(得分:0)
您可以按照自己的意愿进行选择:
无需进一步说明,这不是错误
在行中添加“ if”语句,以确保其不为空
if(getSupportActionBar() != null) {
getSupportActionBar().setTitle(getString(R.string.artist));
}
assert getSupportActionBar() != null;
getSupportActionBar().setTitle(getString(R.string.artist));
如果您在多个位置使用“ getSupportActionBar”,则可以删除所有这些警告,作为回报,您只会收到有关@NonNull用法的警告。
@NonNull
@Override
public ActionBar getSupportActionBar() {
return super.getSupportActionBar();
}
答案 1 :(得分:-1)
使用
setTitle(CharSequence text);
因此,如果您想在ActionBar
至" Hello world"中设置文字。你会做的
setText("Hello world);
或
setText(R.string.hello_world);