在Kotlin没有吸气的财产
我怎样才能用一个自定义的setter来声明一个属性,但是在Kotlin没有getter? 例如在安科 ,他们这样做:
var myProperty: Type @Deprecated(AnkoInternals.NO_GETTER, level = DeprecationLevel.ERROR) get() = AnkoInternals.noGetter() set(value) { field = value; /* setter logic */ }
但是对我来说这看起来有些不好意思。 这是一个正确的方法吗? 如果是,那么项目没有Anko依赖的情况呢?
PS让我清楚 – 我想要的不是吸气,而是私人的吸气
弃用setter仍然是获得效果的唯一方法。
您不需要@Deprecated
依赖项,只需使用具有适当level
的@Deprecated
注释。
- Observable.combineLatest更新到RxJava 2.xx后导致错误 – 不能推断类型
- 使用mapTo为ArrayList赋值
- 如何在TornadoFx中注入ItemViewModel
- 错误:执行任务':app:clean'失败。 无法删除文件
- 可自定义parcelable对象
- 正确的方法为不可变的构造函数注入Kotlin类
- Kotlin android数据库:不能将java.lang.String强制转换为android.database.Cursor
- Java lambdatypes推断在Kotlin中没有像预期的那样工作
- 错误:未找到注释处理器'__gen.AnnotationProcessorWrapper_debug_android_databinding_annotationprocessor_ProcessDataBinding'