GitPedia
youlookwhat

youlookwhat/ByRecyclerView

🔥 RecyclerView 下拉刷新、上拉松手/自动加载更多、item点击/长按、item局部刷新、头布局/尾布局/状态布局、万能分割线、Skeleton骨架图、极简adapter、嵌套滑动置顶

30 Releases
Latest: 10mo ago
1.4.2Latest
youlookwhatyoulookwhat·10mo ago·August 11, 2025
GitHub

📋 Changes

  • Sets whether the StateView is displayed
  • later need setNewData() or notifyDataSetChanged();
  • @param isRemoveRefresh Whether to remove StateView immediately
1.4.1
youlookwhatyoulookwhat·2y ago·June 7, 2024
GitHub

ListView的BaseListAdapter 优化和新增 ```setNewData()``` ``` public void setNewData(List<T> data) { this.mData = data == null ? new ArrayList<T>() : data; notifyDataSetChanged(); } ```

1.4.0
youlookwhatyoulookwhat·2y ago·May 31, 2024
GitHub

adapter里新增: ``` setPageEmptyView(View emptyView) setPageData(boolean isFirstPage, List<T> data) ``` 在adapter里可单独设置emptyView,然后再使用`setPageData`

1.3.7
youlookwhatyoulookwhat·3y ago·June 9, 2023
GitHub

fix removeData() https://github.com/youlookwhat/ByRecyclerView/commit/ad5e59bd07e5066adb04d4e0fa33d7a2a77c57f2

1.3.6
youlookwhatyoulookwhat·3y ago·October 23, 2022
GitHub

fix 优化判断是否能加载更多逻辑 ``` public boolean isLoadMoreEnabled() { return mLoadMoreListener != null && (mLoadMoreEnabledStatus == 1 || mLoadMoreEnabledStatus == 2); } ```

1.3.5
youlookwhatyoulookwhat·3y ago·October 16, 2022
GitHub

📋 Changes

  • 设置数据 和 处理空视图。
  • 如果想列表上方状态视图(StateView),不能使用这个方法。
  • @param isFirstPage 是否是第一页
  • @param data 需要设置的数据
  • @param emptyView 空视图的View
1.3.3
youlookwhatyoulookwhat·3y ago·September 21, 2022
GitHub

📋 Changes

  • 内存释放和临界状态的处理
1.3.2
youlookwhatyoulookwhat·3y ago·July 12, 2022
GitHub

fix item 悬浮置顶加入下拉刷新 ,悬浮错位 https://github.com/youlookwhat/ByRecyclerView/issues/57 相关修改:https://github.com/youlookwhat/ByRecyclerView/commit/f9ce5b1cb34d801e107c4680a059153b98dc4c0f 感谢提出者 [PYJVIP](https://github.com/PYJVIP),还给了解决方案。 ```java if (StickyHeaderHandler.TYPE_STICKY_VIEW == mBaseAdapter.getItemViewType(i)) { int customTopItemViewCount = mBaseAdapter.getCustomTopItemViewCount(); mHeaderPositions.add(i + customTopItemViewCount); } ```

1.3.1
youlookwhatyoulookwhat·4y ago·April 7, 2022
GitHub

fix possible IndexOutOfBoundsException https://github.com/youlookwhat/ByRecyclerView/issues/52 修复可能发生的角标越界异常 ```java if (mData != null && mData.size() > 0 && position < mData.size()) { return mData.get(position); } ``` 更新JitPack配置

1.3.0
youlookwhatyoulookwhat·4y ago·December 22, 2021
GitHub

📋 Changes

  • 设置加载更多监听
  • @param isAutoLoadMore 是否自动加载
  • @param preLoadNumber 自动加载时,默认滑动到倒数第[preLoadNumber]条数据加载,默认1
  • @param listener 监听器
  • @param delayMillis 延迟多少毫秒执行加载更多
1.2.1
youlookwhatyoulookwhat·4y ago·November 22, 2021
GitHub

[完善] 使用`refreshNotifyItemChanged(position, payload);`不继承`bindViewPayloads`时,默认使用`bindView`处理。 ```java // 设置要局部刷新的position及payload adapter.refreshNotifyItemChanged(position, PayloadAdapter.PAYLOAD_COLLECT); // adapter里额外再继承 bindViewPayloads 方法 @Override protected void bindViewPayloads(@NonNull BaseBindingHolder holder, @NonNull DataItemBean bean, @NonNull ItemPayloadBinding binding, int position, @NonNull List<Object> payloads) { // 删除掉这一行,自己处理,不走bindView() // super.bindViewPayloads(holder, bean, binding, position, payloads); for (Object p : payloads) { int code = (int) p; switch (code) { case PAYLOAD_ZAN: binding.tvZan.setText(bean.getIsZan() == 1 ? "已赞" : "点赞"); break; case PAYLOAD_COLLECT: binding.tvCollect.setText(bean.getIsCollect() == 1 ? "已收藏" : "收藏"); break; default: break; } } } ```

1.2.0
youlookwhatyoulookwhat·4y ago·November 20, 2021
GitHub

新增 item局部刷新 ```java // 设置要局部刷新的position及payload adapter.refreshNotifyItemChanged(position, PayloadAdapter.PAYLOAD_COLLECT); // adapter里额外再继承 bindViewPayloads 方法 @Override protected void bindViewPayloads(@NonNull BaseBindingHolder holder, @NonNull DataItemBean bean, @NonNull ItemPayloadBinding binding, int position, @NonNull List<Object> payloads) { for (Object p : payloads) { int code = (int) p; switch (code) { case PAYLOAD_ZAN: binding.tvZan.setText(bean.getIsZan() == 1 ? "已赞" : "点赞"); break; case PAYLOAD_COLLECT: binding.tvCollect.setText(bean.getIsCollect() == 1 ? "已收藏" : "收藏"); break; default: break; } } } ```

1.1.6
youlookwhatyoulookwhat·5y ago·May 17, 2021
GitHub

📋 Changes

  • 增加处理 横向宫格分割线
1.1.5
youlookwhatyoulookwhat·5y ago·February 1, 2021
GitHub

📋 Changes

  • 解决setStateView可能存在的错误
  • 优化在ViewPage2里使用时,使用下拉刷新的处理逻辑
1.1.4
youlookwhatyoulookwhat·5y ago·November 26, 2020
GitHub

📋 Changes

  • 处理在ViewPager2中下拉刷新时左右移动中断的问题,可setDispatchTouch(false)取消处理
  • 增加setStateViewEnabled(boolean stateViewEnabled, boolean isRemoveRefresh),状态布局可直接remove
1.1.3
youlookwhatyoulookwhat·5y ago·August 26, 2020
GitHub

📋 Changes

  • 优化`OnItemFilterClickListener`和`OnItemChildFilterClickListener `代码
  • 更改加载更多View的进度条默认颜色,默认取`colorAccent`
1.1.2
youlookwhatyoulookwhat·5y ago·August 12, 2020
GitHub

📋 Changes

  • `OnItemFilterClickListener` item防止重复点击
  • `OnItemChildFilterClickListener` item子view防止重复点击
1.1.1
youlookwhatyoulookwhat·5y ago·July 21, 2020
GitHub

fix: ```java if (!adapter.hasObservers()) { adapter.registerAdapterDataObserver(mDataObserver); } ```

1.1.0-support
youlookwhatyoulookwhat·6y ago·May 25, 2020
GitHub

📋 Changes

  • 修改加载更多逻辑:最后一条显示松开手指即加载
1.1.0
youlookwhatyoulookwhat·6y ago·May 25, 2020
GitHub

📋 Changes

  • 修改加载更多逻辑:最后一条显示松开手指即加载
1.0.18-support
youlookwhatyoulookwhat·6y ago·March 28, 2020
GitHub

📋 Changes

  • fix GridSpaceItemDecoration setSpanSizeLookup会发生错乱 https://github.com/youlookwhat/ByRecyclerView/issues/13
1.0.18
youlookwhatyoulookwhat·6y ago·March 28, 2020
GitHub

📋 Changes

  • fix GridSpaceItemDecoration setSpanSizeLookup会发生错乱 https://github.com/youlookwhat/ByRecyclerView/issues/13
1.0.17-support
youlookwhatyoulookwhat·6y ago·March 9, 2020
GitHub

📋 Changes

  • 设置item骨架图:通过额外setAdapter实现 【在之前 不能 setAdapter()】
  • 配置方法:
  • adapter 必须!
  • load item骨架图 默认 layout_by_default_item_skeleton
  • shimmer 是否有微光动画 默认 true
  • angle 微光角度 默认 20
  • frozen 是否不可滑动 默认 true不可滑动
  • color 微光的颜色 默认 R.color.by_skeleton_shimmer_color
  • + 9 more
1.0.17
youlookwhatyoulookwhat·6y ago·March 9, 2020
GitHub

📋 Changes

  • 设置item骨架图:通过额外setAdapter实现 【在之前 不能 setAdapter()】
  • 配置方法:
  • adapter 必须!
  • load item骨架图 默认 layout_by_default_item_skeleton
  • shimmer 是否有微光动画 默认 true
  • angle 微光角度 默认 20
  • frozen 是否不可滑动 默认 true不可滑动
  • color 微光的颜色 默认 R.color.by_skeleton_shimmer_color
  • + 9 more
1.0.16-support
youlookwhatyoulookwhat·6y ago·February 21, 2020
GitHub

Support版本: 增加悬浮item设置 1、使用StickyLinearLayoutManager,传入adapter ```java StickyLinearLayoutManager layoutManager = new StickyLinearLayoutManager(getContext(), mAdapter); ``` 2、在adapter里,将悬浮的item的ItemViewType设置为StickyHeaderHandler.TYPE_STICKY_VIEW ```java @Override public int getItemViewType(int position) { if (0 <= position && position < getData().size()) { DataItemBean itemData = getItemData(position); if ("title".equals(itemData.getType())) { return StickyHeaderHandler.TYPE_STICKY_VIEW; } else { return 2; } } return 2; } ``` > 也可以使用StickyGridLayoutManager,只需将最后一个参数传入 adapter 即可 注意:使用置顶item时,不能使用自带的下拉刷新。

1.0.16
youlookwhatyoulookwhat·6y ago·February 21, 2020
GitHub

📋 Changes

  • 增加悬浮item设置
1.0.15-support
youlookwhatyoulookwhat·6y ago·January 14, 2020
GitHub

📋 Changes

  • 优化destroy的操作
1.0.15
youlookwhatyoulookwhat·6y ago·January 14, 2020
GitHub

📋 Changes

  • 优化destroy的操作
1.0.14-support
youlookwhatyoulookwhat·6y ago·January 13, 2020
GitHub

Support 版本: [修复] 添加瀑布流分割线的问题 [修复] 在指定位置添加一组数据的问题 [优化] 代码优化

1.0.14
youlookwhatyoulookwhat·6y ago·January 13, 2020
GitHub

AndroidX 版本: [修复] 添加瀑布流分割线的问题 [修复] 在指定位置添加一组数据的问题 [新增] 使用多类型列表代码示例 [新增] 使用自定义横向加载更多布局示例 [优化] 代码优化