Android Mvc 实现
android studio java目录结构:
Activity package目录:Controller 层
Model package目录:Model 层
View package目录:View层
Interfaces package目录:抽象接口 层
各自负责的部分:
View 层:初始化TextView 、Button 等android.View 控件,并声明接口和接口接口内方法,设置将其e.g Button.OnClick 借用接口实例调用接口方法,从而回调给Controller 层进行操作,再由Controller 层返回Model 层的结果给View 层。
Model 层:数据逻辑层,对所有业务逻辑进行计算并返回结果到Controller 层。
Interfaces 层:抽象接口层,抽象Model 层中方法。
Activity(Controller) 层:控制层,对View 层,Model 层进行实例化,控制对View 层 和 Model 层的数据交互。
e.g 计算器:
View 层:
数字和操作符(0~9, +、-、*、/)button 作为 操作输入view(InputView),并在其view中公布接口触发返回响应回controller 层。
显示textview 作为 显示输出view(OutputView),并在其view中公布设置textview文本的方法,供Controller 层 调用。
Model 层:(数据逻辑层)
在controller 层 实现了inputview 的公开接口方法后,调用Model 层(CalModel)的方法 进行数据运算 并返回结果到OutputView中进行显示。
Controller 层:(控制层)
在实例化 InputView 时,传入InputView 接口新实例,实现InputView 接口方法,并实例化 OutputView,实例化 Model 层的 CalModel。