Pur*_*iya 1 android kotlin android-livedata mutablelivedata
无需ViewModel()仅使用简单的类进行扩展,我就可以实现 LiveData 和 DataBinding 示例,但我在 google 开发人员文档中显示了扩展ViewModel()以创建 LiveData 对象。那么为什么我们需要扩展它呢?
https://developer.android.com/topic/libraries/architecture/livedata
var a = 10如果您在Fragment或中创建一个变量Activity,然后在某处更改它(例如:单击按钮),现在它变为50,然后您旋转屏幕(称为配置更改),您会注意到它再次a变为10。有时听起来很烦人吧?ViewModel就是为了解决这个问题而设计的。
您在其中声明的任何变量都
ViewModel不会受到Configuration Change的影响。
当然,您必须扩展(继承)您的班级ViewModel或AndroidViewModel获得此能力。但如果您不需要此功能,则无需扩展它们。
以下显示了将导致配置更改的情况:
旋转屏幕
更改系统语言
插入物理键盘
连接到鼠标
要点:配置更改后,Activity 将被重新创建,因此数据可能会丢失。
| 归档时间: |
|
| 查看次数: |
848 次 |
| 最近记录: |