我有以下代码:
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中使用字符串时,我得到了下一个皮棉错误,除外:
现在,当我将函数更改为String ... str im不再收到此lint错误时。
public static void someFunc(@MyAnnotation String... str){
}
这是怎么做的?
最佳答案
据我所知,Varargs没有Support annotation
,StringDef
也没有。 StringDef
仅用于String
数据类型,尚未扩展为Varargs。
该文档没有关于支持Varargs的任何内容:http://developer.android.com/reference/android/support/annotation/StringDef.html