Аннотации ресурсов Android в списке - PullRequest
0 голосов
/ 16 мая 2019

Есть ли способ аннотировать список целых чисел с помощью аннотации ресурса, чтобы lint показала мне ошибку, когда я неправильно использую целочисленное возвращаемое значение метода?

Пример (setTextColor() занимает только @ColorInt):

fun useColor() {
    val textView = TextView(null)
    textView.setTextColor(getColor()) // This correctly shows an error
    textView.setTextColor(getColorList()[0]) // Can I make this show an error too? 
}

@ColorRes
fun getColor() : Int {
    return R.color.black
}

@ColorRes // any way to specify this differently?
fun getColorList() : List<Int>{
    return arrayListOf(R.color.black)
}

1 Ответ

0 голосов
/ 16 мая 2019

Я действительно немного использовал свой мозг сейчас, и это мой обходной путь. Не отвечает на вопрос, но несколько решает проблему. Просто уменьшите возврат до единственного значения:

fun useColor() {
    val textView = TextView(null)
    textView.setTextColor(getColorValue(0)) // Correctly show error
}

@ColorRes
fun getColorValue(index : Int) : Int {
    return arrayListOf(R.color.black)[index]
}
...