对于ViewModel
向UI提供的数据,我有一些更复杂的逻辑,因此仅通过LiveData
公开数据将无法完成我的工作。现在,我已经在Android docs中看到可以在Observable
上实现ViewModel
以获得我需要的细粒度控件。
但是在文档中也说:
在某些情况下,您可能更喜欢使用ViewModel通过使用LiveData实现Observable接口的组件对象,即使您失去了生命周期管理功能LiveData。
内置的Android数据绑定的智能程度如何?它会在必要时自动取消注册其侦听器(例如,在视图被破坏的情况下进行配置更改),这样我就不必担心丢失的生命周期功能了吗?还是我必须观看View的生命周期并注销其侦听器? (=手动执行LiveData通常为我执行的操作。)>
对于ViewModel提供给UI的数据,我有一些更复杂的逻辑,因此仅通过LiveData公开数据将无法完成我的工作。现在,我已经在Android文档中看到可以实现...
不。 ViewModel
不会自动注销Observable
订阅。您可以手动进行操作。这很容易。