最开始遇见这个问题我的第一想法是给recyclerview添加滑动监听,然后再给底部导航添加显示隐藏动画,可是这么做很不优雅,一旦recyclerview不止一个就需要给每个都添加一遍监听(虽然同样的代码cv就行了),这绝不是一个优秀程序员的追求。所以就出现了第二种方法,利用系统提供的Behavior。
许多人应该不陌生,利用CoordinatorLayout和自定义的Behavior我们可以实现很多炫酷的效果,AndroidStudio提供的模板Activity中的ScrollingActivity就是用的这种方式。
言归正传,下面说一说如何实现仿知乎的显示隐藏效果如何实现,在这里我就不做具体讲解了,网上讲解的博客已经很多了,相信也比我三言两句讲解的清楚,下面我推荐几篇我在实现的时候参考过的博文
如果你想理解NestedScrolling机制,首先推荐鸿洋大神的博文
Android NestedScrolling机制完全解析 带你玩转嵌套滑动
接下来是我参考过的自定义Behavior的博文
CoordinatorLayout高级用法-自定义Behavior
废话不多说,先贴出代码
package com.yking.kotlinfuture.widgets
import android.animation.Animator
im