属性的注解限制不提示


#1

比如下面的代码:

@setparam:ColorRes
var bgColor: Int
  get() = TODO()
  set(value) {
    TODO()
  }

fun setBgColor(@ColorRes bgColor: Int){
  TODO()
}

同样的功能,都用注解限制输入值为 @ColorRes,一个写成属性,一个写成方法。然后调用:

bgColor = 1     // 不爆红
setBgColor(1) // 爆红提示输入值有误

个人比较强迫症一个 set 方法不想写成 fun,但是写成属性又会失去代码提示,这让我很难受。是我属性的注解没写对,还是属性上的注解就是不会有提示?


#2

是 Kotlin 的 bug 或者编译器的 bug 吗?


京ICP备16022265号-2 Kotlin China 2017 - 2018