setContentView(R.layout.my_activity);

mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);

// improve performance if you know that changes in content do not change the size of the RecyclerView

//如果确定每个item的内容不会改变RecyclerView的大小,设置这个选项可以提高性能

mRecyclerView.setHasFixedSize(true);

// use a linear layout manager

//创建默认的线性LayoutManager

mLayoutManager = new LinearLayoutManager(this);

mRecyclerView.setLayoutManager(mLayoutManager);

// specify an adapter (see also next example)

//设置Adapter

mAdapter = new MyAdapter(myDataset);

mRecyclerView.setAdapter(mAdapter);

}

}

LayoutManager:用来确定每一个item如何进行排列摆放,何时展示和隐藏。提供默认的动画效果,你也可以定义你自己的LayoutManager和添加删除动画。在回收或重用一个View时,LayoutManager会向适配器请求新的数据来替换旧的数据,这种机制避免了创建过多的View和频繁的调用findViewById方法。

2.MyAdapter

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {

private String[] mDataset;

// Provide a reference to the type of views that you are using (custom viewholder)

//自定义的ViewHolder,持有每个Item的的所有界面元素

public static class ViewHolder extends RecyclerView.ViewHolder {

public TextView mTextView;

public ViewHolder(TextView v) {

super(v);

mTextView = v;

}

}

// Provide a suitable constructor (depends on the kind of dataset)

public MyAdapter(String[] myDataset) {

mDataset = myDataset;

}

// Create new views (invoked by the layout manager)

//创建新View,被LayoutManager调用

@Override

public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,

int viewType) {

// create a new view

View v = LayoutInflater.from(parent.getContext())

.inflate(R.layout.my_text_view, parent, false);

// set the view’s size, margins, paddings and layout parameters

ViewHolder vh = new ViewHolder(v);

return vh;

}

// Replace the contents of a view (invoked by the layout manager)

//将数据与界面进行绑定

@Override

public void onBindViewHolder(ViewHolder holder, int position) {

// - get element from your dataset at this position

// - replace the contents of the view with that element

holder.mTextView.setText(mDataset[position]);

}

// Return the size of your dataset (invoked by the layout manager)

//这个就不解释了

@Override

public int getItemCount() {

return mDatas

RecyclerView使用 及 滑动时加载图片优化方案,GitHub上标星13k的《Android面试突击版》相关推荐

  1. RecyclerView使用 及 滑动时加载图片优化方案

    RecyclerView使用 及 滑动时加载图片优化方案 简述 本篇博文主要给大家分享关于RecyclerView控件的使用及通过继承RecyclerView来实现滑动时加载图片的优化方案,也同样能解 ...

  2. Android RecyclerView使用 及 滑动时加载图片优化方案

    1.控制线程数量 + 数据分页加载2.重写onScrollStateChanged方法 这个我们后面再谈,下面先来看看RecyclerView控件的使用及我们为什么选择使用它 RecyclerView ...

  3. RecyclerView使用 及 滑动时加载图片优化方案,android应用程序开发语言

    // Provide a reference to the type of views that you are using (custom viewholder) //自定义的ViewHolder, ...

  4. android listview 只加载显示的图片大小,Android ListView只加载当前屏幕内的图片(解决list滑动时加载卡顿)...

    最近在做ListView分页显示,其中包括图片 和文字(先下载解析文字内容,再异步加载图片)发现每次点击下一页后,文字内容加载完毕,马上向下滑动,由于这时后台在用线程池异步下载图片,我每页有20条,也 ...

  5. Android之 ListView滑动时不加载图片

    listview加载图片优化的功能, 在我们使用新浪微博的时候,细心的同学一定发现了,在滑动的过程中,图片是没有被加载的, 而是在滑动停止时,才加载图片了. 我们今天就做一个这样的效果吧. 我们先考虑 ...

  6. Unity大场景数据加载及优化方案

    前段时间,有几个虚拟仿真公司跟我请教关于大地形的加载优化问题,它们使用的引擎都是自己研发的,引擎对于开发者来说,大同小异,它们的基本构造是一样的,关键是在于解决问题的方法,正是基于这个前提写了这个课程 ...

  7. LIstview滑动时不加载图片,停止时加载!

    //参照 http://blog.csdn.net/yy1300326388/article/details/45153813 public class CarWashDistanceAdapter ...

  8. SDWebImage的坑,无网络时加载图片失败,有网络后依然无法加载显示的问题

    网上查找得知 当SDWebImage 在加载图片的时候 我用的是- (void)sd_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *) ...

  9. 游戏UI动态加载图片优化

    说到UI优化,很多人对其并不以为意,UI的制作无非使用UGUI或者NGUI.UI优化主要是针对图集,还有一些依赖项的优化,针对的是内存优化,上面这些都是关于静态UI的优化,这个是作为程序员都要经历的阶 ...

最新文章

  1. 分布式存储fastdfs安装使用
  2. 将jpg图像转换成yuv420p格式
  3. laravel 查询
  4. wxWidgets:wxDataViewCtrl类用法
  5. oracle复习笔记
  6. 前端学习(2978):上午回顾
  7. jwt 私钥_什么是 JSON Web Token(JWT)
  8. LeetCode(118)——杨辉三角(JavaScript)
  9. 【可行】adb修改手机代理方式
  10. mybatis 的 dao 接口跟 xml 文件里面的 sql 是如何建立关系的?
  11. php对接建行h5网页支付
  12. Flask知识点串烧(三)--- JInjia2模板
  13. 怎么解决pdf乱码问题呢?
  14. blog推荐 - 左岸读书
  15. 大数据数据湖之hudi
  16. 「CG原画插画教程」初学者如何练习人体动态结构?
  17. Android社招最全面试题,成功拿下大厂offer
  18. 云计算机特点的是什么意思,云计算是什么?有哪些特点?
  19. 洛谷 P4725 【模板】多项式对数函数 ntt
  20. 代码编码格式,文件格式批量转换工具

热门文章

  1. ansible playbook的使用
  2. 《工作日志》mac中home目录下不能创建文件
  3. php 网页抓取软件,WebSpider蓝蜘蛛网页抓取
  4. hdu 5814 Find the Period
  5. 简历筛选三要素,你满足几个?
  6. winkawaks模拟器
  7. 2021年11月券商App行情刷新及交易体验评测报告
  8. 【Unity】滚动缩放关卡选择列表
  9. python合集(3)-------字符串
  10. 坑人小程序——模拟cmd