RecyclerView双列表联动

本文介绍了基于鸿洋大神API实现的客户端导航界面双列表联动效果。先储备基础知识,如用BRVAH装载数据、研究RecyclerView滚动事件及定位滚动方式;再给出具体实现步骤,包括布局、适配、请求数据和写入联动控制等,还推荐了开源项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

双列表联动效果如下:

以上,是博主根据鸿洋大神的玩Android开放的API做的一个客户端,其中导航界面使用了双列表联动来展示数据。

一、前期基础知识储备

1.使用强大的开源项目BRVAH装载两个列表的数据,简单易用,强烈推荐使用;

2.RecyclerView的滚动事件OnScrollListener研究 - 监听列表滚动状态的接口为 RecyclerView.OnScrollListener

注册接口的方法有两个:

1).setOnScrollListener(OnScrollListener listener) ,可能会有空指针问题,已经被废弃。

2).addOnScrollListener(OnScrollListener listener)

3.OnScrollListener类是个抽象类,有两个方法:

void onScrollStateChanged(RecyclerView recyclerView, int newState): 滚动状态变化时回调

recyclerView: 当前在滚动的RecyclerView

newState: 当前滚动状态 void onScrolled(RecyclerView recyclerView, int dx, int dy): 滚动时回调

recyclerView : 当前滚动的view

dx : 水平滚动距离

dy : 垂直滚动距离

dx > 0 时为手指向左滚动,列表滚动显示右面的内容

dx < 0 时为手指向右滚动,列表滚动显示左面的内容

dy > 0 时为手指向上滚动,列表滚动显示下面的内容

dy < 0 时为手指向下滚动,列表滚动显示上面的内容

4.RecycleView4种定位滚动方式演示

1)recyclerView.scrollBy(x, y),这个方法是自己去控制移动的距离,单位是像素;

2)recyclerView.scrollToPosition(position),这个方法的作用是定位到指定项,就是把你想显示的项显示出来,但是在屏幕的什么位置是不管的,只要那一项现在看得到了,那它就罢工了;

3)recyclerView.smoothScrollToPosition(position),smoothScrollToPosition(position)scrollToPosition(position)效果基本相似,也是把你想显示的项显示出来,只要那一项现在看得到了,那它就罢工了,不同的是smoothScrollToPosition是平滑到你想显示的项,而scrollToPosition是直接定位显示;

4)((LinearLayoutManager)recyclerView.getLayoutManager()).scrollToPositionWithOffset(position,0);主角总是最后才登场,这种方式是定位到指定项如果该项可以置顶就将其置顶显示。比如:微信联系人的字母索引定位就是采用这种方式实现。

二、上代码,具体实现

1.在布局中放入两个RecyclerVi

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值