MVC (Model-View-Controller):M是指逻辑模型,V是指视图模型,C则是控制器:
Android中也使用了比较流行的MVC框架,在Android中:
a. 视图层(view):一般采用XML文件进行界面的描述,使用的时候可以非常方便的引入。当然,如果你对Android了解的比较多了话,就一定可以想到在Android中也可以使用javaScript+html等的方式作为View层,当然这里需要进行java和javascript之间的通信,幸运的是,Android提供了他们之间非常方便的通信的实现。
b.控制层(Controller):Android的控制层的重任通常落在了众多的Activity的肩上,这句话也就暗示了不要在Activity中写代码,要通过Activity交割Model业务逻辑层处理,只要做的另外一个原因是Android中的Activity的响应时间是5s。如果耗时的操作放在这里,程序就很容易被回收掉。
c.模型层(Model):对数据库的操作,对网络等的操作都应该在Model里面处理,当然对业务计算等操作也是必须放在该层的。
在Android SDK中的数据绑定,也都是采用了与MVC框架类似的方法来显示数据。在控制层上将数据按照视图模型的要求(也就是Android SDK中的Adapter)封装就可以直接在视图模型上显示了,从而实现了数据绑定。比如显示Cursor中所有数据的ListActivity,其视图层就是一个ListView,将数据封装为ListAdapter,并传递给ListView,数据就在ListView中现实。
eclipse中svn插件的安装
打开eclipse-Help-InstallNewSoftware选项,点击Add按钮根据需要,添加自己需要的版本svn控制器的版本,填写name和url,点击ok。Name:Subclipse1.6.x(Eclipse3.2)URL:http://s
Android 三种线程使用方法
Android中三种线程使用方法第一种:Thread示例代码如下newThread(newRunnable(){@Overridepublicvoidrun(){//在此调用需要在线程中调用的方法}}).start();第二种:runOnUiThr
PopupWindow动画结束后dismiss崩溃解决
在个别机型PopupWindow动画结束后dismiss崩溃,日志:prename=codeclass=plainE/libEGL(28187):calltoOpenGLESAPIwithnocurrentcontext(loggedonceperthread)可能是bug,导致onAnimationEnd