【发布时间】:2017-07-07 13:39:18
【问题描述】:
我正在尝试在 kotlin 中使用 AndroidAnnotations @SharefPref,但出现以下错误
org.androidannotations.annotations.sharedpreferences.Pref can only be used on an element that extends org.androidannotations.api.sharedpreferences.SharedPreferencesHelper
我做错了什么?
//Interface
@SharedPref(SharedPref.Scope.APPLICATION_DEFAULT)
open interface MyPreferences {
@DefaultInt(-1)
fun someIntValue():Int
}
//Fragment
@Pref
lateinit open var sharedPref:CongressPreferences_
//usage within fragment
val get: Int = sharedPref.selectedEventId().get()
【问题讨论】:
-
错误信息不是不言自明吗?
MyPreferences不扩展SharedPreferencesHelper。 -
@azizbekian 不,不是。使用
Kotlin和Annotations有时会抛出与实际问题无关的错误。如果生成了带注释的代码,就会发生这种情况。 (见下面的解决方案)
标签: android kotlin android-annotations kotlin-android-extensions