Android RecycleView 应用
来源:互联网 发布:java官网下载旧版jdk 编辑:程序博客网 时间:2024/06/04 23:30
RecycleView 的使用
1:设置布局管理器
mRecycle.setLayoutManager(layout)
2:设置数据Adapter
mRecycle.setAdapter();
3:设置Item增加、移除动画
mRecyclerView.setItemAnimator(new DefaultItemAnimator());
4:添加分割线
mRecyclerView.addItemDecoration(new DividerItemDecoration(getActivity(), DividerItemDecoration.HORIZONTAL_LIST));
在具体应用场景中,较为重要的是
LayoutManager;Adapter;ViewHolder三类
LayoutManager在系统中提供了三个默认实现:
- LinearLayoutManager 现行管理器,支持横向、纵向。
- GridLayoutManager 网格布局管理器
- StaggeredGridLayoutManager 瀑布就式布局管理器
此处重点分析一下Adapter与ViewHolder配合使用
1 RecycleView中并没有item的点击事件,ClickListener和LongClickListener需要自己实现,由外部传参,并在RecyclerView中进行调用。
2 HomeAdapter.MyViewHolder可以使用泛型
3 在HomeAdapter中,不仅重写了需要的方法,还可以额外自定义了部分其他方法,将其看作内部类的功能
4 在此基础上,还可以添加Header 和Footer
class HomeAdapter extends RecyclerView.Adapter<HomeAdapter.MyViewHolder>
{
publicinterfaceOnItemClickLitener
{
void onItemClick(View view, int position);
void onItemLongClick(View view , int position);
}
private OnItemClickLitener mOnItemClickLitener;
publicvoidsetOnItemClickLitener(OnItemClickLitener mOnItemClickLitener)
{
this.mOnItemClickLitener = mOnItemClickLitener;
}
@Override
publicvoidonBindViewHolder(final MyViewHolder holder, finalint position)
{
holder.tv.setText(mDatas.get(position));
// 如果设置了回调,则设置点击事件
f (mOnItemClickLitener != null)
{
holder.itemView.setOnClickListener(new OnClickListener()
{
@Override
publicvoidonClick(View v)
{
int pos = holder.getLayoutPosition();
mOnItemClickLitener.onItemClick(holder.itemView, pos);
}
});
holder.itemView.setOnLongClickListener(new OnLongClickListener()
{
@Override
publicbooleanonLongClick(View v)
{
int pos = holder.getLayoutPosition();
mOnItemClickLitener.onItemLongClick(holder.itemView, pos);
returnfalse;
}
});
}
}
阅读全文
0 0
- Android RecycleView 应用
- android recycleView
- Android RecycleView
- Android-RecycleView
- 【Android应用开发】RecycleView API 翻译 (文档翻译)
- RecycleView的简单应用
- Android RecycleView---- RecycleView的简单使用
- Android 5.0 Design RecycleView
- Android RecycleView(一)
- Android RecycleView的使用
- Android RecycleView汇总
- android recycleview使用
- android RecycleView的使用
- android recycleView使用总结
- Android recycleview+cardview
- Android中的RecycleView
- Android RecycleView使用详解
- Android RecycleView分割线
- redis-cluster主流客户端驱动不支持pipeline,该怎么解决。
- js实现鼠标移入移出小特效!
- Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
- java简单的加密和解密算法
- 1433: [ZJOI2009]假期的宿舍
- Android RecycleView 应用
- 今日的代码鼓励花~
- 自定义带清除功能的EditText
- linux下网络通信客户端(普通)
- 100以内计算
- NOIP2015 Day2 T2 子串
- Android Studio中的Sdk manager介绍
- MST
- python url链接编码问题