Android RecyclerView的简单使用

本文实例为大家分享了Android RecyclerView使用的具体代码,供大家参考,具体内容如下

package com.itheima74.recyclerview; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.RecyclerView; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import java.util.ArrayList; /** * RecyclerView * 1.增强版的listview * 2.官方推荐 * 3.使用步骤: * a.build.gradle文件中添加依赖compile 'com.android.support:recyclerview-v7:25.2.0' * b.xml布局中引入,注意完整包名+类名 * c.具体见代码 */ public class MainActivity extends AppCompatActivity { ArrayList<Fruit> mFruitList; private RecyclerView recyclerview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); initAdapter(); } /** * 初始化数据适配器 */ private void initAdapter() { recyclerview.setAdapter(new FruitAdapter()); } /** * 初始化控件 */ private void initView() { recyclerview = (RecyclerView) findViewById(R.id.recyclerview); // 设置为LinearLayoutManager布局方式,线性布局 // LinearLayoutManager layoutManager = new LinearLayoutManager(this); // 两种方式,水平或垂直排布,默认垂直排布 // layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL); // recyclerview.setLayoutManager(layoutManager); // 设置为GridLayoutManager布局方式,3列排布 GridLayoutManager gridLayoutManager = new GridLayoutManager(this,3); recyclerview.setLayoutManager(gridLayoutManager); } /** * 初始化数据,水果集合 */ private void initData() { mFruitList = new ArrayList<>(); mFruitList.add(new Fruit("apple", R.drawable.apple_pic)); mFruitList.add(new Fruit("banana", R.drawable.banana_pic)); mFruitList.add(new Fruit("cherry", R.drawable.cherry_pic)); mFruitList.add(new Fruit("grape", R.drawable.grape_pic)); mFruitList.add(new Fruit("mango", R.drawable.mango_pic)); mFruitList.add(new Fruit("orange", R.drawable.orange_pic)); mFruitList.add(new Fruit("pear", R.drawable.pear_pic)); mFruitList.add(new Fruit("pineapple", R.drawable.pineapple_pic)); mFruitList.add(new Fruit("strawberry", R.drawable.strawberry_pic)); mFruitList.add(new Fruit("watermelon", R.drawable.watermelon_pic)); } class FruitAdapter extends RecyclerView.Adapter<ViewHolder> { // 返回ViewHolder对象 @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { return new ViewHolder(View.inflate(getApplicationContext(), R.layout.listview_item, null)); } // 刷新界面,为ViewHolder两个属性设置内容 @Override public void onBindViewHolder(ViewHolder holder, int position) { Fruit fruit = mFruitList.get(position); holder.iv.setImageResource(fruit.imageId); holder.tv.setText(fruit.name); } @Override public int getItemCount() { // FruitAdapter是MainActivity的内部类,可以直接使用外部类的成员变量 return mFruitList.size(); } } static class ViewHolder extends RecyclerView.ViewHolder { ImageView iv; TextView tv; ViewHolder(View itemView) { super(itemView); iv = (ImageView) itemView.findViewById(R.id.iv); tv = (TextView) itemView.findViewById(R.id.tv); } } }
package com.itheima74.recyclerview; /** * Created by My on 2017/3/2. */ class Fruit { String name; int imageId; Fruit(String name, int imageId) { this.name = name; this.imageId = imageId; } }

复制代码 代码如下:<img src="http://img.blog.csdn.net/20170303085928987?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemh1NjIwMTk3Ng==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

时间: 2024-09-25 20:50:23

Android RecyclerView的简单使用的相关文章

Android RecyclerView详解及简单实例

Android  RecyclerView 小白今天第一次接触RecyclerView,前辈大神告诉我这是一个很神奇的控件,一看就是一整天. RecyclerView中有规定好的方法去显示列表,图片甚至视频.还带有删除新建某一列表的方法.相对于ListView这个 RecyclerView控件就更加牛了. 明白的大神看一眼就懂,小白可以自己照源码敲一遍看看效果.这段程序是把A-Z按列排列下来: package com.example.osserver.recycler; import andro

android RecyclerView:实现带header的grid

原文:RecyclerView: Grid with header  GridView和ListView有许多的相似之处,不过也有一个显著的不同:没有header和footer.现在它们两者都可以用RecyclerView实现,我想看看如何在grid上添加header. GridLayoutManager 我用GridLayoutManager创建了一个spanCount为2的RecylcerView. 注:spanCount即列数.这里GridLayoutManager的第二个参数就是span

Android RecyclerView实现下拉列表功能_Android

现在市面上的很多的应用,都带有下拉列表的功能,将所有选项都放在下拉列表中,当用户点击选择的时候,弹出所有的选项,用户选择一项后,下拉列表自动隐藏,很多下拉列表都是用ListView + PopupWindow来实现的,由于Google推出了替代ListView的RecyclerView,所以简单实现一下: MainActivity.java package com.jackie.countdowntimer; import android.graphics.drawable.BitmapDraw

Android RecyclerView艺术般的控件使用完全解析_Android

RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用. 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,例如:ListView.GridView. 那么有了ListView.GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,提供了一种插拔式的体验,高度的解耦,异常的灵活,通过设置它提供的不同LayoutManager,ItemDecorati

Android RecyclerView 上拉加载更多及下拉刷新功能的实现方法_Android

RecyclerView 已经出来很久了,但是在项目中之前都使用的是ListView,最近新的项目上了都大量的使用了RecycleView.尤其是瀑布流的下拉刷新,网上吧啦吧啦没有合适的自己总结了一哈. 先贴图上来看看:     使用RecyclerView实现上拉加载更多和下拉刷新的功能我自己有两种方式: 1.使用系统自带的Android.support.v4.widget.SwipeRefreshLayout这个控价来实现. 2.自定义的里面带有RecyleView的控件. 使用Recycl

Android RecyclerView 数据绑定实例代码_Android

前言 在上一个项目里有很多很多很多很多的RecyclerView,然后我需要写很多很多很多很多的Adapter和Viewholder--多倒没问题,但是里面有很多重复的代码这就不能忍了!每一个Adapter和ViewHolder其实做的事情非常的像:视图绑定,数据绑定,点击事件分发.还有啥?既然它们做的事情都一样,为啥我们还要傻傻的继续写着重复的代码? 正文 BaseAdapter 通常我们要创建一个RecyclerView.Adapter是怎么做的? 接收一个数据列表 重写getItemCou

Android RecyclerView 基础知识详解_Android

本周的谷歌I/O大会带来了很多关于Android的振奋人心的消息.可能我们需要较长的时间来消化Android L引入的新东西. 这些天我一直在研究RecyclerView,并想在此给各位分享一下到目前为止我的成果. RecyclerView是什么? RecyclerView是一种新的视图组,目标是为任何基于适配器的视图提供相似的渲染方式.它被作为ListView和GridView控件的继承者,在最新的support-V7版本中提供支持. 在开发RecyclerView时充分考虑了扩展性,因此用它

Android RecyclerView添加FootView和HeadView_Android

前提概要: 上一篇文章已经介绍过了RecyclerView的基本使用方法,原文如下:android RecyclerView布局真的只是那么简单!此篇文章算是对RecyclerView更深使用的介绍. FootView和HeadView在ListView中的本身就有相对应的函数,但是在新潮的RecyclerView中却没有了,FootView在分页加载(上拉加载更多)中起着很重要的作用,因此也必须要学习一下了.(HeadView的添加与FootView的添加相比大致一样,在此就只讲FootVie

Android RecyclerView添加上拉加载更多功能_Android

上一篇文章已经介绍了如何为RecyclerView添加FootView,在此基础上,要添加分页加载的功能其实已经很简单了. 上一篇文章地址:为RecyclerView添加FootView和HeadView 效果:(源码在文章结尾) 实现关键 在上一篇代码的基础上,只需要在onBindViewHolder(ViewHolder holder, int position)函数中添加一定修改就可以了,如下: @Override public void onBindViewHolder(ViewHold