InterView - MVC模式
来源:互联网 发布:mac tex 编辑:程序博客网 时间:2024/06/05 11:01
说说MVC模式的原理,Android SDK中有哪些组件使用到了MVC模式,其基本原理是什么?
MVC的基本原理就是通过Controller连接View和Model。也就是说,当View中显示的数据变化时(如ListView要删除某个列表项),会通知Controller,而不是直接通知Model。
这时Controller接到View的通知后,会在Model中采取相应的动作(如删除数据库中的某条记录)。如果模型的数据发生变化(如插入,删除数据库中的记录),会将变化通知控制器,然后控制器会通知视图重新显示数据。
使用MVC模式可以将显示部分与数据部分分离,这样当更换视图或模型时可以不影响对方,更有利于程序的维护。
在Android SDK中使用MVC模式的组件非常多。例如,所有的列表控制(ListView,Spinner,GridView等)都采用MVC模式与数据交互。在Android中MVC中的V就代表这些组件,而M则代表各种数据源以及操作数据库的库。C则代表Adapter类。Android中的Adapter类分很多程度,但都拥有共同的接口。这些Adapter类主要包括BaseAdapter,SimpleAdapter,SimpleCursorAdapter,ArrayAdapter,CursorAdapter等。它们分别对应不同的数据源,例如,ArrayAdapter对应List和数组数据源,而CursorAdapter对应Cursor对象(一般是从数据库中获取的记录集)。这些Adapter类都需要使用getView方法返回当前列表项显示的View对象。当Model发生改变时,会调用 BaseAdapter.notifyDataSetChanged方法通知组件数据已变化,这时Adapter会调用getView方法用于重新显示组件的内容。当组件中显示的数据变化时,如删除一个项表项,组建会通过Adapter中的方法删除Model中相应的记录,然后再调用BaseAdapter.notifyDataSetChanged方法使组件中显示的数据发生变化。总之一句话,无论是数据变化,还是组件中显示的数据变化,都需要将Adapter作为桥梁来达到View和Model之间同步的目的。
- InterView - MVC模式
- MVC interview questions with answers
- interView - Activity生命周期,启动模式
- Interview
- Interview
- Interview!!
- Interview
- Interview
- interview
- interview
- Interview
- Interview
- Interview
- interview
- interview
- interview~~~
- Interview
- interview
- 【读书笔记】Windows CE嵌入式系统_【5】_进程间通讯u
- 查看dd命令的执行进度
- Python基础笔记
- java实现在指定目录中查找字符串
- Apache Maven 入门篇 ( 上 )
- InterView - MVC模式
- asdfasdfsaxcvxcv
- 算法快速回顾——八皇后问题
- ubuntu下编译交叉编译工具链
- MINA 传送文件 文件名 .
- Analyze Java memory leak problem with Eclipse Memory Analyzer
- Ubuntu 字体修改以及字体的相关知识
- 程序员如何更加优秀
- java内存溢出和内存泄露