UI效果仿写android技术android 知识整理

仿京东、淘宝首页 通过Tab的吸顶效果(方案一)

2020-07-16  本文已影响0人  恒泪

仿淘宝、京东首页,通过两层嵌套的RecyclerView实现tab的吸顶效果

目前NesteRecyclerView_V2(方案二)已更新,推荐。

NestRecyclerView_V2

声明

本项目是根据下方作者的项目进行改进而来的,请先阅读大佬的文章以了解其原理
https://github.com/JasonGaoH/NestedRecyclerView
https://juejin.im/post/5d5f4cfcf265da03e61b18b8


效果

示例.gif

下载二维码

下载二维码

附上项目地址 https://github.com/Ubitar/NestRecyclerView

对项目做出了如下修改:

1、使用Kotlin对代码做出了精简,同时改进原文的部分变量名称,更易懂
2、父RecyclerViewAdapter必须实现INestAdapter接口规范
3、添加setPreLoadHeight函数以控制RecyclerView可见范围外的视图预加载

其他详情请看https://github.com/Ubitar/NestRecyclerView

常见问题

1、SmartRefresLayout作为最外层父组件且Tab栏为固定状态,下拉列表会触发父组件的下拉刷新

我推荐监听外层NestRecyclerView的滚动高度来控制刷新框架是否开启下拉刷新setEnableRefresh(Boolean)

2、怎么控制子RecyclerView是否滚动到了底部
         yourAdapter.setOnChildScrollEndListener { recyclerView, newState ->
            ToastUtils.showShort("滚动子RY到底部了")
            //这里可以加载更多数据
        }

可以参考demo中的adaptercreateChildRecyclerView的写法判断是否滚动到底部

3、实现起来好复杂

是有点复杂,双RecyclerView贵在可以循环利用视图,如果你的想要实现的业务功能不是很大,或许你可以考虑下这个大佬的库https://www.jianshu.com/p/0783b0a37fa1

上一篇 下一篇

猜你喜欢

热点阅读