Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android onCreateDialog未注释的方法重写用@NonNull注释的方法_Android - Fatal编程技术网

Android onCreateDialog未注释的方法重写用@NonNull注释的方法

Android onCreateDialog未注释的方法重写用@NonNull注释的方法,android,Android,我正在创建DialogFragment,当我想覆盖onCreateDialog时,我收到以下警告: 未注释的方法重写用@NonNull注释的方法 如果我想将该注释放到我的方法中,Android Studio将找不到该注释 为什么会这样?谢谢您的帮助。因为您重写了一个用@NonNull注释定义的方法(这意味着该方法不能返回null),并且您在重写的实现中没有使用相同的注释,所以这使得它不匹配 请在提交前搜索您的问题,此问题已被询问多次 (编辑:@NonNull注释的固定含义,谢谢ci)查看Dia

我正在创建DialogFragment,当我想覆盖
onCreateDialog
时,我收到以下警告:

未注释的方法重写用@NonNull注释的方法

如果我想将该注释放到我的方法中,Android Studio将找不到该注释


为什么会这样?谢谢您的帮助。

因为您重写了一个用@NonNull注释定义的方法(这意味着该方法不能返回null),并且您在重写的实现中没有使用相同的注释,所以这使得它不匹配

请在提交前搜索您的问题,此问题已被询问多次


(编辑:@NonNull注释的固定含义,谢谢ci)

查看
DialogFragment
中的
onCreateDialog
方法的定义,您将看到:

@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState)
因此,您的代码应该包含相同的
@NonNull
注释,如下所示:

@Override
@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
    return super.onCreateDialog(savedInstanceState);
}

可能是重复的谢谢。我已尝试导入
android.support.annotation.NoNNull
,但androidstudio找不到批注。这个解决方案对我不起作用。@JHH你没有正确阅读这个问题,原理是一样的,但细节不同。在本例中,该方法用@NonNull注释,这意味着您不能从中返回
null
savedInstanceState
参数很可能为空。文件中甚至特别提到了这个案例。谢谢@ci\ux。显然我太快了。
@Override
@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
    return super.onCreateDialog(savedInstanceState);
}