美文网首页
MVC、MVP与ListView、RecycleView

MVC、MVP与ListView、RecycleView

作者: 岛在深海处 | 来源:发表于2017-06-07 17:06 被阅读0次

    1.设计模式(mvc, mvp)

    (1)mvc 将数据模型、界面视图和业务逻辑控制分开的模式
    • Model :只准备纯数据,不关心它如何呈现。

    问题:Model层与View层到底是如何连接的? 大多数情况Activity既充当View层又充当Controller层,所以用原生控件的时候,Model只会与Activity交互而不会与xml文件交互,但是如果用自定义控件的时候可以把Model层获取的数据(通过controller层)传给View层进行显示(在View层操作从model层获取的数据)---这样的好处在于当要修改UI时不需要去修改Model和Controller。

    • View:(xml文件或自定义控件)只管显示数据,不管数据从何而来
    • Controller:(Activity)负责控制处理事件

    简述MVC框架模式以及在你(ANDROID)项目中的应用

    问题:Model的更新是通过观察者模式告知View的?观察者模式?

    (2)mvp

    主要是activity或者Fragment充当了View层,Presenter层相当于View层和Model层的一个桥梁,将Model层获取的数据传送给View层显示(还是在Presenter层操作model层获取的数据数据)

    2.RecycleView

    先复习下ListView,使用ViewHolder是为了减少findViewById的次数

    ListView扩展
    setMultiChoiceModeListene实现ListView多选或单选模式

    • (1)创建Adapter继承RecycleView.Adapter<ViewHolder>
    • (2)实现两个重要的方法onBindViewHodler()以及onCreateViewHolder() (使用RecyclerView控件我们就可以把Item View视图创建和数据绑定这两步进行分来进行管理,用法就更加方便而且灵活)
    • (3)创建一个ViewHolder类,该类必须继承自RecyclerView.ViewHolder类

    RecycleView扩展:
    RecycleView官方分割线

    ListView与RecyclerView的区别

    1.ListView是继承BaseAdapter,复用convertView使用ViewHoleder减少findViewById()的次数,而RecyclerView的adpter是继承RecyclerView.adapte<RcyclerView.ViewHolder>
    2.RecyclerView可以根据自己的需求去自定义分割线
    3.RecyclerView自己实现了局部刷新。
    4.RecyclerView提供了动画效果。
    5.RcyclerView支持嵌套滑动机制。

    相关文章

      网友评论

          本文标题:MVC、MVP与ListView、RecycleView

          本文链接:https://www.haomeiwen.com/subject/qmeputtx.html