java - 滚动时如何在recyclerView上方展开和折叠布局?
问题描述
我有一个应用程序,它有一个带有产品的回收器和上面带有类别的另一个布局我想在回收器像这个视频一样滚动时展开和折叠类别
我做了一个听滚动的类:
public abstract class MyRecyclerScroll extends RecyclerView.OnScrollListener {
final float MINIMUM = 200;
int scrollDist = 0;
boolean isVisible = true;
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
if (isVisible && scrollDist > MINIMUM) {
hide();
scrollDist = 0;
isVisible = false;
}
else if (!isVisible && scrollDist < -MINIMUM) {
show();
scrollDist = 0;
isVisible = true;
}
if ((isVisible && dy > 0) || (!isVisible && dy < 0)) {
scrollDist += dy;
}
}
public abstract void show();
public abstract void hide();
}
然后我recycler.setOnScrollListener
像这样使用它:
rec.setOnScrollListener(new MyRecyclerScroll() {
@Override
public void show() {
}
@Override
public void hide() {
}
});
解决方案
推荐阅读
- java - 我怎样才能阻止这些汽车相互碰撞?
- r - 如何将相同的过滤器应用于 50 多个数据帧?
- python - Python将两个两行组合成单行
- ionic-framework - 离子链接侧菜单项到外部网站
- python - 如何在 If 语句中发出通知但在 Python 中继续 While 循环?
- stripe-payments - 为小额交易充值客户余额
- javascript - 如何在 Jest 中正确模拟类模块?
- python - 如何检查文件是否存在?
- python - 在pymysql中获取执行的sql语句
- c# - List.Where("string".Contains()) 在 LINQ 查询中返回 NULL