Tag: kotlin delegate

Android数据绑定不适用于Kotlin的class级授权

我的ViewModel: class MyVM( app: Application, private val observableImpl: BaseObservable, /* other colaborators*/ ) : AndroidViewModel(app), Observable by observableImpl { var currencyCode: String by Delegates.observable(“”) { _, _, newValue -> /* business logic methods */ notifyPropertyChanged(BR.currencyCode) } @Bindable get } 我的布局: 当currencyCode在数据模型中更新时, TextView不会自动更改文本。 我试图摆脱从AndroidViewModelinheritance和定义MyVM ,如下所示: class MyVM(/* other colaborators*/) : BaseObservable() { } 它的工作。 问题是,我不能丢弃我的生产代码中的AndroidViewModel的inheritance。 尽管有一个解决方法: […]

Kotlin在Android上使用MultiDex进行授权,低于21

我有以下代表… fun integerPref(initialValue: Int) = object : ObservableProperty<Int>(initialValue) { override fun afterChange(property: KProperty<*>, oldValue: Int, newValue: Int) { getSharedPreference(INTEGER_PREF, EasyInjection.mode) .edit() .putInt(property.toString(), newValue) .apply() } override fun getValue(thisRef: Any?, property: KProperty<*>): Int { return getSharedPreference(INTEGER_PREF, EasyInjection.mode) .getInt(property.toString(), initialValue) } } 这位代表的目的是处理股票的偏好。 当我的应用程序变成MultiDex时,问题就发生了 。 当我在下面的代码中使用它时,应用程序崩溃。 class IntroduceActivity : BaseActivity() { private val CURRENT_VERSION = 1 private […]