Kotlin对委托属性的注释

在Kotlin中,是否有一种方法可以在委托属性(例如: lazy )上定义注释

 class MyActivity: Activity() { @ColorInt val textColor: Int by lazy { ContextCompat.getColor(this, R.color.someColor) } ... 

IDE在@ColorInt注释中引发错误:

这个注解不适用于'具有委托的成员财产'

2 Solutions collect form web for “Kotlin对委托属性的注释”

你可以用@delegate注释这个委托。

 @delegate:ColorInt val textColor: Int by lazy { ... } 

从文档 :

  • delegate (存储委托属性的委托实例的字段)。

如果注释获取器已足够,则可以使用注释use-site target @get:ColorInt

 @get:ColorInt val textColor: Int by lazy { ... } 
  • 平等在Kotlin
  • 如何在Android中获取ObservableField的值
  • 重载分辨率kotlin中的模糊性错误
  • Kotlin注解处理会忽略具有相似名称的项目
  • Android中的与Kotlin的AsyncTask
  • Kotlin lambda以Interface作为参数
  • Kotlin继承:将其作为构造函数参数传递
  • Android LiveData:MutableData从不处于活动状态
  • Kotlin中有构造函数吗?
  • 不能从java模块调用kotlin模块
  • 期望的类型与kotlin中的if表达不匹配
  • Kotlin language will be the best programming language for Android.