首页 > 解决方案 > Android : 在 Java 中翻译 Kotlin ViewModel 支持字段封装技术

问题描述

在用 Kotlin 编写的 Android 应用中,ViewMoel 中的 LiveData 属性可以使用支持字段技术进行封装,如下所示:

private val _score = MutableLiveData<Int>()
val score: LiveData<Int>
    get() = _score

如何在 Java 中翻译它以获得相同级别的封装?

标签: androidkotlinencapsulationandroid-viewmodelbacking-field

解决方案


这是一个普通的getter方法,这是转换后的java代码

private final MutableLiveData<Integer> _score = new MutableLiveData<Integer>();

@NotNull
public final LiveData<Integer> getScore() {
    return this._score;
}

这是获取Java代码表单kotlin的步骤

在安卓工作室

工具 -> kotlin -> 显示 kotlin 字节码 -> 反编译


推荐阅读