eclipse 使用recycleView基础配置和使用

来源:互联网 发布:软件界面的英文 编辑:程序博客网 时间:2024/05/22 17:40

好久没有写博客了,记录下学的东西会更有收获生气!废话不多说,开始学习吧。

有好多人说Eclipse上使用recycleView好难配置,AS上会好很多,我也是配置了好久,一直会报错缺少啥东西,也找了好多网上的资料和其他的博客,多没有啥收获,不过幸不辱命,最终还是在我的捣鼓下配置完成了!接下来要看清每一步哦。

奋斗首先肯定是下载资源啦大笑。下载android-support-v7-recyclerview.jar就好,就一个jar当然是不够的,run时会发现你少了V4包中的某些资源,于是就应该下载一个最新的V4包,这样我们写完初始化的东西,运行就可以了。当然有时候会出现其他的状况和错误,我就不一一说明了。

接下来就是使用,不多说,直接附代码

recyclerView = (RecyclerView) findViewById(R.id.id_recyclerview);recyclerView.setLayoutManager(new LinearLayoutManager(this));recyclerView.setLayoutManager(new GridLayoutManager(this, 1));recyclerView.setLayoutManager(new StaggeredGridLayoutManager(1, StaggeredGridLayoutManager.VERTICAL));
主要看最后一个设置,
new StaggeredGridLayoutManager设置你展示的模块如grid一般,第一个参数即每一行的个数,而后面一个即方向。
接下来就时附上数据和适配器,它的适配器必须是继承android.support.v7.widget.RecyclerView.Adapter,其中的viewholder可自定义。
@Overridepublic MyviewHolder onCreateViewHolder(ViewGroup arg0, int arg1) {View view = LayoutInflater.from(ocontext).inflate(R.layout.newsitem, null);MyviewHolder holder = new MyviewHolder(view);return holder;}

初始化创建viewHolder
  
 @Override    public void onBindViewHolder(MyviewHolder arg0, int arg1) {        arg0.source.setText(olist.get(arg1).getSource());        arg0.title.setText(olist.get(arg1).getTitle());        arg0.context.setText(olist.get(arg1).getContent());        arg0.bitmaps.setAdapter(olist.get(arg1).getGradeAdapter());    }

附上数据

当然你自定义的ViewHolder也是要继承android.support.v7.widget.RecyclerView.ViewHolder。

public MyviewHolder(final View itemView) {super(itemView);title = (TextView) itemView.findViewById(R.id.title);source = (TextView) itemView.findViewById(R.id.source);context = (TextView) itemView.findViewById(R.id.context);bitmaps = (RecyclerView) itemView.findViewById(R.id.bitmaps);bitmaps.setLayoutManager(new LinearLayoutManager(ocontext));bitmaps.setLayoutManager(new GridLayoutManager(ocontext, 1));bitmaps.setLayoutManager(new StaggeredGridLayoutManager(3, StaggeredGridLayoutManager.HORIZONTAL));itemView.setOnLongClickListener(new OnLongClickListener() {@Overridepublic boolean onLongClick(View arg0) {if (setonItemClickListener != null) {setonItemClickListener.ItemClickListener(itemView, getPosition());}return true;}});}

构造方法中初始化控件,设置某些自定义方法,这样的就配置完成了。其实基础使用还是很简单的。

学了一年多的Android 感觉自己捣鼓的收获会更多。奋斗有人会问图片怎么没了,其实我还在捣鼓ing...


0 0