魅动力组件化方案
本质还是在一个app中处理,只不过通过gradle文件的配置达到了一种多模块和多lib的假象
这种方案的优势:
- 开发方便 页面跳转直接使用引用跳转
- 模块的增加与删除无需syn gradle 直接编译即可生成,减少了同步编译的时间
劣势:
- 模块无法单独运行
- 单模块无法单独添加依赖,依赖一旦添加,属于全局依赖
升级部分
- RXBinding响应式编程替代code_edit.addTextChangedListener
优质库以及进步记录
- BaseRecyclerViewAdapterHelper
https://github.com/CymChad/BaseRecyclerViewAdapterHelper
- linearlayout 反向排列布局
1 | <LinearLayout |
- 性能和bug检测工具
1 | debugImplementation 'com.didichuxing.doraemonkit:doraemonkit:2.0.2'//滴滴出品哆啦A梦 |
- 使用View.post更新UI或者测量控件宽高
1 | live_room_bg_img.post { |
- let和also
let返回最后一行代码结果 also返回的是对象本身
业务代码总结
- 第三方登录示例
1 | private fun loginWechat() { |
- 吐司
1 | UIToast.toast(this, getString(R.string.code_is_empty)) |
- loading框
1 | showLoading(true) 在父类MeiCustomBarActivity中有定义 |
- 权限申请
1 | RxPermissions(this) |
- 创建对话框 用一个函数单独维护一个对话框对象 返回点击事件
1 | /** |