Android 更新RecyclerView的好方法

作者:zhangmiao14 时间:2023-11-24 09:39:59 

一般在使用RecyclerView的时候不免要修改RecyclerView的数据,使用notifyDataSetChanged()来刷新界面,但是当数据比较多,而只是修改了一点的数据,或者刷新比较频繁,这样就会导致界面的卡顿问题,用户交互特别不好。

这个时候就需要只是修改需要修改的数据,不要将数据全部进行更新,这样就可以解决问题。

局部更新的代码如下:


private int position;//当前recyclerview的position
@BindView(R.id.speak_valuate_recycler_view)
RecyclerView recyclerView;
private LinearLayoutManager mRecyclerViewLayoutManager;
mRecyclerViewLayoutManager = new LinearLayoutManager(this);
mRecyclerViewLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
recyclerView.setLayoutManager(mRecyclerViewLayoutManager);
private void changVolume(final int volume) {
   int first = mRecyclerViewLayoutManager.findFirstVisibleItemPosition();
   int last = mRecyclerViewLayoutManager.findLastVisibleItemPosition();
   if (position >= first && position <= last) {
     View view = recyclerView.getChildAt(position - first);
     if (recyclerView.getChildViewHolder(view) instanceof SpeakContentAdapter.SpeakContentHolder) {
       //修改数据
       ProgressImageView progressImageView = (ProgressImageView) view.findViewById(R.id.speak_item_record);
       progressImageView.setProgress(volume);
     }
   }
 }

以上所述是小编给大家介绍的Android 更新RecyclerView的好方法网站的支持!

来源:http://www.cnblogs.com/zhangmiao14/archive/2017/06/13/7002272.html

标签:android,recyclerview
0
投稿

猜你喜欢

  • Java基础之练习打印三角形

    2023-08-25 05:39:33
  • 完美解决springboot中使用mybatis字段不能进行自动映射的问题

    2023-07-27 00:41:35
  • c#基于winform制作音乐播放器

    2023-08-06 11:55:08
  • Java如何实现简单后台访问并获取IP

    2021-10-27 02:26:27
  • Java实现双色球抽奖随机算法示例

    2023-04-25 12:15:38
  • C# 微信支付回调验签处理的实现

    2021-07-27 01:57:34
  • Android 矢量室内地图开发实例

    2021-08-24 18:33:23
  • SpringCloud断路器Hystrix原理及用法解析

    2022-03-20 16:47:41
  • Java多线程状态及方法实例解析

    2021-09-10 22:49:53
  • Spring Security 中细化权限粒度的方法

    2022-08-30 14:26:40
  • Spring boot 连接多数据源过程详解

    2023-11-28 12:09:51
  • Avalonia封装实现指定组件允许拖动的工具类

    2023-01-01 19:03:03
  • Java使用原型模式展现每日生活应用案例详解

    2023-03-08 04:27:08
  • Java Selenium实现多窗口切换的示例代码

    2022-01-22 22:48:08
  • 探讨Android 的屏幕滚动操作不如 iPhone 流畅顺滑的原因

    2023-04-05 09:05:33
  • 详解Android控件状态依赖框架

    2023-07-01 10:01:06
  • SpringMVC域对象共享数据示例详解

    2023-03-10 22:21:21
  • C#中的图像Image类与打印Printing类用法

    2022-07-25 06:24:36
  • SpringBoot实现过滤器和拦截器的方法

    2022-10-21 23:29:34
  • Java Apollo是如何实现配置更新的

    2023-09-26 13:55:18
  • asp之家 软件编程 m.aspxhome.com