android-recyclerView

发表于:,更新于:,By Sally
大纲
  1. 1. 特点
  2. 2.
  3. 3. recyclerView没有实现点击事件,所以就需要我们自己做

特点

  • 不关心item是否显示在正确的位置,以及如何显示 : LayoutManager决定recyclerView的现实风格,eg:ListView,GridView,HorizontalGridView,瀑布流
  • 不关心item间如何分隔:ItemDecoration决定item之间的间隔
  • 不关心item增加与删除item的动画:ItemAnimator实现增加与删除时的动画
  • 仅仅关注如何回收与复用view:强制使用ViewHolder

  • ItemDecoration可以设置item之间的分隔线:github上有实现

    如果系统提供了类似的style,我们可以通过修改系统的属性值来实现我们想要的效果。

1
2
//然后在style中,修改
<item name="android:listDivider">@drawable/xxx</item>
  • 添加mDatas.add(position, “str”)和删除mDatas.remove(position) item时,不是使用notifyDataSetChanged(),使用notifyItemInserted(position)notifyItemRemoved(position)

recyclerView没有实现点击事件,所以就需要我们自己做

1
2
// 如果添加了view,那view点击事件获得position的方式如下:
int layoutPosition = holder.getLayoutPosition()