全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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=""> 

效果图:

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


# Android  # RecyclerView  # Android ExpandableRecyclerView使用方法详解  # Android使用Recyclerview实现图片水平自动循环滚动效果  # Android RecyclerView使用方法详解  # Android使用RecyclerView实现今日头条频道管理功能  # Android使用RecyclerView实现列表数据选择操作  # Android使用分类型RecyclerView仿各大商城首页  # android使用ItemDecoration给RecyclerView 添加水印  # Android如何使用RecyclerView打造首页轮播图  # Android RecyclerView基本使用详解  # RecyclerView的简单使用  # 设置为  # 两种  # 可以直接  # 大家分享  # 增强版  # 具体内容  # 大家多多  # Override  # protected  # mFruitList  # private  # savedInstanceState  # super  # void  # onCreate  # gt  # xml  # public  # compile  # lt 


相关文章: 网站制作多少钱一个,建一个论坛网站大约需要多少钱?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  网站制作的步骤包括,正确网址格式怎么写?  如何注册花生壳免费域名并搭建个人网站?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  网站制作报价单模板图片,小松挖机官方网站报价?  网站app免费制作软件,能免费看各大网站视频的手机app?  如何快速生成专业多端适配建站电话?  如何高效搭建专业期货交易平台网站?  制作销售网站教学视频,销售网站有哪些?  建站之星导航如何优化提升用户体验?  建站主机空间推荐 高性价比配置与快速部署方案解析  如何使用Golang table-driven基准测试_多组数据测量函数效率  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  再谈Python中的字符串与字符编码(推荐)  Swift开发中switch语句值绑定模式  如何通过cPanel快速搭建网站?  制作门户网站的参考文献在哪,小说网站怎么建立?  高防服务器如何保障网站安全无虞?  高端云建站费用究竟需要多少预算?  网站设计制作企业有哪些,抖音官网主页怎么设置?  建站之星代理如何优化在线客服效率?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  如何基于云服务器快速搭建网站及云盘系统?  建站之星多图banner生成与模板自定义指南  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  如何在建站宝盒中设置产品搜索功能?  高防服务器租用如何选择配置与防御等级?  高端企业智能建站程序:SEO优化与响应式模板定制开发  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  公司门户网站制作流程,华为官网怎么做?  如何选择美橙互联多站合一建站方案?  家庭建站与云服务器建站,如何选择更优?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  h5在线制作网站电脑版下载,h5网页制作软件?  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  网站制作公司排行榜,四大门户网站排名?  如何获取上海专业网站定制建站电话?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  建站之星3.0如何解决常见操作问题?  ,南京靠谱的征婚网站?  javascript中对象的定义、使用以及对象和原型链操作小结  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  如何快速生成凡客建站的专业级图册?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  韩国服务器如何优化跨境访问实现高效连接?  如何快速搭建高效香港服务器网站?  如何快速生成ASP一键建站模板并优化安全性?  如何在Tomcat中配置并部署网站项目? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。