我正在创建DialogFragment,当我想覆盖时,onCreateDialog我收到以下警告:
未注释的方法覆盖使用@NonNull注释的方法
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
return super.onCreateDialog(savedInstanceState);
}
Run Code Online (Sandbox Code Playgroud)
如果我想将该注释放在我的方法中,Android Studio无法找到该注释.
为什么会这样?谢谢你的帮助.
小智 16
看一下onCreateDialog方法的定义DialogFragment,你会看到:
@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState)
Run Code Online (Sandbox Code Playgroud)
所以你的代码应该包含相同的@NonNull注释:
@Override
@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
return super.onCreateDialog(savedInstanceState);
}
Run Code Online (Sandbox Code Playgroud)
因为您覆盖了一个用 @NonNull 注释定义的方法(意味着该方法不得返回 null),并且您没有在覆盖的实现中使用相同的注释,所以这使得它不匹配。
请在提交前搜索您的问题,这已被多次询问。
Android Studio 错误的含义:未注释的参数覆盖@NonNull 参数
(编辑:@NonNull 注释的固定含义,感谢 ci_)
| 归档时间: |
|
| 查看次数: |
4392 次 |
| 最近记录: |