【AndroidArchitecture Components最佳实践--Lifecycles】白日放歌须纵酒,青春作伴好还乡。这篇文章主要讲述AndroidArchitecture 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的引用,可能会导致内存泄漏
推荐阅读
- Win8电脑开机黑屏的处理办法
- Android简单实现将手机图片上传到server中
- Android图文混排-实现EditText图文混合插入上传
- Android移动APP开发笔记——Cordova(PhoneGap)通过CordovaPlugin插件调用 Activity 实例
- Arch Linux 下Android 源代码的下载以及编译
- 搞定Android模拟器,开启甜蜜之旅
- 功能强大的图片截取修剪神器(Android SimpleCropView及其实例代码重用简析(转))
- 2020-09-28 375次浏览原文Android平台上的Aplay与TinyAlsa移植使用
- [Android] 开发第六天