首页 > 代码库 > 【Android】Architecture Components最佳实践--Lifecycles
【Android】Architecture Components最佳实践--Lifecycles
- UI controllers (activities and fragments) 中代码越少越好,不应该自己去请求数据,而是用ViewModel来更新数据,并且监听LiveData来更新UI
- UI controllers 中的UI写成数据驱动的,也就是UI controller需要做的只有当数据变化时更新view,或者当用户有输入行为时给ViewModel反馈
- 把数据逻辑放在ViewModel中,ViewModel存在的目的是将UI controller 与应用内其他的一切分离。ViewModel的作用并不是拿数据(如从网络上,从数据库),而是告诉相应的组件它该做什么,然后给UI controller 提供返回的数据
- 可以使用DataBinding来保证UI controllers与view之间的代码清晰度。如果我们要更新ui,那么避免不了的就是在UI controllers中写更新的代码,java中当然也可以用Butter Knife之类的东西来打成类似的目的
- 如果UI比较复杂,可以创建Presenter来进行UI 更新,有的时候可能会多写出一些代码,但是可以易于测试
- ViewModel永远不要持有View或者Activity的引用,可能会导致内存泄漏
【Android】Architecture Components最佳实践--Lifecycles
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。