我有一个自定义注释类
@Target(AnnotationTarget.FUNCTION)
@Retention(AnnotationRetention.RUNTIME)
annotation class MyCustomAnnotation
还有一个函数
fun myFunction() {
//Code here
}
如何在编码时每次调用 myFunction() 时都需要 MyCustomAnnotation,并且如果没有注释,则会显示警告并提供添加注释的选项。
我的期望
@MyCustomAnnotation
myFunction()
您可以使用
@OptIn
功能来提供此功能(文档)。
将注释定义更新为以下内容,将消息修改为适当的内容:
@RequiresOptIn(message = "Requires opt in when calling function")
@Target(AnnotationTarget.FUNCTION)
@Retention(AnnotationRetention.RUNTIME)
annotation class MyCustomAnnotation
将注释添加到函数的定义中:
@MyCustomAnnotation
fun myFunction() {
//Code here
}
然后,在调用该函数时,请按如下方式选择加入以防止出现警告:
@OptIn(MyCustomAnnotation::class)
myFunction()