jetpack 协程_KtMvvm: jetpack_mvvm+rxhttp+协程+注解生成viewmodel 的demo,仅用于学习分享,大家可以根据自己项目去写符合自己项目的框架...

KtMvvm

介绍

jetpack_mvvm+rxhttp+协程+注解生成viewmodel 的demo,仅用于学习分享,大家可以根据自己项目去写符合自己项目的框架

demo的前世今生

demo主要代码来自 鸡你太美 鸡哥的mvvm框架,只是基于他的基础上修修改改

鸡哥的 jetpack mvvm通用框架

网络请求主要是用Rxhttp,能解决你遇到的所有网络问题

Rxhttp

其他的还有 ImmersionBar、loadsir、Channel等优秀库,库太多,不详细列举,如有侵权,请联删

demo说明(由于比较简单,看看热闹就好)

基类的设计

基类全部继承抽离了的IBaseView,用于一些Ac和Fm都会用到的方法,IBaseAc和IBaseFm都是处理基础逻辑的。要实现自己的逻辑,只需要继承IBaseAc和IBaseFm(其中带Db的是Databinding),如demo里面的myappbase包名下

网络请求

只需要去 Rxhttp 看使用说明就好,这个没什么好说的,这里只是写了几个拓展函数(BaseViewModelExt.kt),用于项目的数据空判断,还有弹窗等,math_code是用于哪个方法报错或者空数据的,对于页面很复杂的有奇效!

本来数据解析类定义了一个接口的,但是moshi不支持接口定义,如果使用fastjson的,可以按需继承接口,降低耦合

3.全局的布局(请求中,空,等)

这里有三个选项,内嵌页面的(需要在需要的布局id命名为load_root),dialog,没弹窗。按需服用就好

3.注解生成viewmodel

主要也是为了全局布局的,看代码复用就好

demo还是简单易懂的,实现也不是最好的,大家可以根据项目自己写适合自己的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值