说说 mvc 模式的原理,它在 android 中的运用。
MVC 英文即 Model-View-Controller
把一个应用的输入、 处理、 输出流程按照 Model、 View、Controller 的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
运用
Android 中界面部分也采用了当前比较流行的 MVC 框架,在 Android 中 M 就是应用程序中二进制的数据,V 就是用户的界面。Android 的界面直接采用 XML 文件保存的,界面开发变的很方便。在 Android 中 C 也是很简单的,一个 Activity 可以有多个界面,只需要将视图的 ID 传递到setContentView(),就指定了以哪个视图模型显示数据。
在 Android SDK 中的数据绑定,也都是采用了与 MVC 框架类似的方法来显示数据。在控制层上将数据按照视图模型的要求(也就是 Android SDK 中的 Adapter)封装就可以直接在视图模型上显示了,从而实现了数据绑定。比如显示 Cursor 中所有数据的 ListActivity,其视图层就是一个ListView,将数据封装为 ListAdapter,并传递给 ListView,数据就在 ListView 中显示。
另一种方式解答
1、模型(model)对象:是应用程序的主体部分,所有的业务逻辑都应该写在该层。
2、 视图(view)对象:是应用程序中负责生成用户界面的部分。也是在整个 mvc 架构中用户唯一可以看到的一层,接收用户的输入,显示处理结果。
3、控制器(control)对象:是根据用户的输入,控制用户界面数据显示及更新 model 对象状态的部分
View:自定义 View 或 ViewGroup,负责将用户的请求通知 Controller,并根据 model 更新界面;
Controller:Activity 或者 Fragment,接收用户请求并更新 model;
Model:数据模型,负责数据处理相关的逻辑,封装应用程序状态,响应状态查询,通知 View改变,对应 Android 中的 datebase、SharePreference 等。
更多相关文章
- Android用户界面设计:基本按钮
- android连续点击出现多个Activity界面
- Android 4.0 Launcher2源码分析——Laucher界面元素分解(主布局文
- android 连接远程数据库
- Android[中级教程]第八章 Json数据的处理
- (转)Android从服务器端获取数据的几种方法
- 【Android Training - 04】保存数据 [ Lesson 2 - 保存文件]
- Android 如何在自定义界面上启用输入法 (How to enable inputmet