gpt4 book ai didi

android - 方法调用 'setTitle' 可能产生 'java.lang.NullpointerException'

转载 作者:行者123 更新时间:2023-12-04 23:58:12 27 4
gpt4 key购买 nike

我尝试使用以下代码为 ActionBar 设置标题:

@Override
public void onResume() {
((MainActivity) getActivity()).getSupportActionBar().setTitle(getResources().getString(R.string.artist));
super.onResume();
}

但是 Android Studio 向我显示了这个警告:

Error warning

我在 StackOverflow 上搜索过,可以通过在我的代码前面添加此代码 if(getSupportActionBar()!=null) 来修复它。但这会导致我的脚本出错。我不确定如何解决这个问题。

最佳答案

您有多种选择来执行您要求的操作:

1 - 忽略警告

不用多解释,这不是错误

2 - 优雅的解决方案

用'if'语句包裹你的行以确保它不为空

if(getSupportActionBar() != null) {
getSupportActionBar().setTitle(getString(R.string.artist));
}

3 - 使用断言

assert getSupportActionBar() != null;
getSupportActionBar().setTitle(getString(R.string.artist));

4 - 移动警告

如果您在多个位置使用“getSupportActionBar”,您可以删除所有这些警告,作为返回,您只会收到有关 @NonNull 用法的警告。

@NonNull
@Override
public ActionBar getSupportActionBar() {
return super.getSupportActionBar();
}

关于android - 方法调用 'setTitle' 可能产生 'java.lang.NullpointerException',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47725698/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com