MF项目具体实现过程及源码分析(总目录)

项目框架图示

参考:MF项目整体框架图示

具体架构类

一、BaseModel

源码及分析:BaseModel源码及分析

二、SharePreferenceUtil(仅在Repository中使用

源码及分析:SharePreferenceUtil源码及分析

三、五个Entity类(对应于四个界面,后续根据需求新增了一个Entity类)

源码及分析:AssistDrivingEntity、CommonEntity、DrivingPreferenceEntity、VehicleSettingEntity、PowerDrivingEntity源码及分析

四、Constants

源码及分析:MF工具类Constants源码

五、Repository extends BaseModel

源码及分析:Repository extends BaseModel 源码及分析(比较核心的一个类)

六、BaseViewModel 《M extends Repository 》extends ViewModel

源码及分析:BaseViewModel源码及分析

七、VehicleApplication extends Application

源码及分析:VehicleApplication源码及分析

八、VehicleViewModel extends BaseViewModel 《Repository》

源码及分析:VehicleViewModel extends BaseViewModel<Repository>源码及分析

具体界面类

一、BaseActivity

BaseActivity<D extends ViewDataBinding,V extends BaseViewModel> extends FragmentActivity源码及分析

二、BaseFragment

BaseFragment<D extends ViewDataBinding, V extends BaseViewModel> extends Fragment源码及分析

三、自定义View SettingItemView对应的settIng_item.xml,含SwitchCompat

自定义View的setting_item.xml源码及分析(含SwitchCompat)

四、自定义View SettingItemView.java,含attrs.xml

自定义View SettingItemView.java源码及分析(含自定义属性attrs.xml)

五、activity_main.xml与MainActivity.java

activity_main.xml源码及分析

MainActivity extends BaseActivity<ActivityMainBinding, VehicleViewModel>源码及分析

六、四个Fragment及对应xml

一个代码简单的例子
(1)assist_driving_fragment.xml与AssistDrivingFragment源码及分析
一个功能相对详细的例子,即驾驶偏好页面,含有开关和设置项
(2)driving_preference_fragment.xml与DrivingPreferenceFragment源码及分析
同2,剩余两个界面直接上实现效果与源码,不做具体分析了:
(3)common_user_fragment.xml与CommonUserFragment源码
(4)vehicle_setting_fragment.xml与VehicleSettingFragment源码

其他类

一、AndroidManifest.xml

MF项目AndroidManifest.xml源码及分析

二、build.gradle(app)

build.gradle(app)源码及分析

三、待补充(本文所有链接内容均已完结,暂无补充)

猜你喜欢

转载自blog.csdn.net/ambitionLlll/article/details/113139926