我有以下代码:
public static final String MY_CONSTANT_A = "A";
public static final String MY_CONSTANT_B = "B";
@StringDef(value={
MY_CONSTANT_A,
MY_CONSTANT_B
})
private @interface MyAnnotation{}
public static void someFunc(@MyAnnotation String str){
}
现在当我试图在someFunc中使用字符串时,我得到了下一个lint错误,例如:
现在当我将我的函数更改为String ... str我不再得到这个lint错误了。
public static void someFunc(@MyAnnotation String... str){
}
这样做的方法是什么?
答案 0 :(得分:1)
据我所知,Varargs没有Support annotation
,StringDef
也没有。{1}}。 StringDef
仅用于String
数据类型,但尚未扩展到Varargs。
该文档没有任何关于支持Varargs的内容:http://developer.android.com/reference/android/support/annotation/StringDef.html