第 8 课:应用架构(界面层)

  1. 为避免数据在设备配置更改时丢失,您应在以下哪种类中存储应用数据?

  2. ViewModel 不可包含对 fragment、activity 或视图的引用。判断正误。

  3. ViewModel 何时销毁?

  4. ViewModelFactory 接口的用途是什么?

  5. 如何封装 ViewModel 中存储的 LiveData 才能使外部对象能够读取数据而无法更新数据?

  6. 界面控制器处于以下哪一种状态时 LiveData 会更新界面控制器(例如 fragment)?

  7. LiveData 观察者模式下,可观察项(被观察对象)是什么?

  8. 您应该在哪个类中添加使用 Transformations.map() 方法将 LiveData 转换为其他值或格式的数据格式化逻辑?

  9. Transformations.map() 方法提供了一种便利的方式来对 LiveData 执行数据操作,并返回 ___。

  10. Transformations.map() 方法的参数有哪些?

  11. 传入 Transformations.map() 方法中的 lambda 函数在哪个线程中执行?