LBehavior 简单实现标题栏、导航栏滑动动画

效果图

博客介绍

Download

allprojects {

repositories {

...

maven { url 'https://jitpack.io' }

}

}

dependencies {

compile 'com.android.support:design:25.3.1'(latestVersion)

compile 'com.github.Lauzy:LBehavior:1.0.1'

}

Usage

基本使用:

根布局需为CoordinatorLayout,类似FrameLayout

...>

...

app:layout_behavior="@string/fab_vertical_behavior/>

根据不同的View在xml中设置不同的layout_behavior

参数

说明

@string/title_view_behavior

顶部标题栏

@string/bottom_view_behavior

底部导航栏

@string/fab_scale_behavior

浮动按钮(缩放)

@string/fab_vertical_behavior

浮动按钮(上下滑动)

自定义(均设有默认值,可不使用):

方法

参数

说明

setMinScrollY

int y

设置触发动画的最小滑动距离,如 setMinScrollY(10)为滑动10像素才可触发动画,默认为5.

setScrollYDistance

int y

设置触发动画的滑动距离,防止用户缓慢滑动时单次滑动距离一直小于setMinScrollY的最小滑动距离导致无法触发动画.如设置此值为100,则用户即便缓慢滑动,当滑动距离达到100时也可触发动画.默认为40.

setDuration

int duration

设置动画持续时间.默认为400ms.

setInterpolator

Interpolator interpolator

设置动画插补器,修饰动画效果.默认模式为LinearOutSlowInInterpolator. Interpolator官方文档

CommonBehavior.from(mFloatingActionButton).show();//代码控制显示

CommonBehavior.from(mFloatingActionButton).hide();//隐藏

CommonBehavior.from(mFloatingActionButton)

.setMinScrollY(20)

.setScrollYDistance(100)

.setDuration(1000)

.setInterpolator(new LinearOutSlowInInterpolator());

Tips

1、因为根布局为CoordinatorLayout,所以使用时Toolbar可能会遮盖RecyclerView顶部的item,BottomBar也可能会遮盖底部item。

可以参考知乎首页设置顶部留白,具体可为RecyclerView添加一个占位的ItemDecoration,或者顶部加一个占位的View,若场景比较固定可简单设置Padding,Margin等,

详情可见Demo,简单处理了这种情况。

2、FloatingActionButton的elevation若大于BottomBar的elevation,则FloatingActionButton动画覆盖在BottomBar上层,反之则在下层,为gif的下部两个按钮的效果。

Apk and More Info

For more usage, you can download or clone the demo. You can also download the demo apk.

android浮动标题栏,GitHub - DARTTTTT/LBehavior: 跟随手势滑动,显示隐藏标题栏、底部导航栏及悬浮按钮的Android Behavior Library...相关推荐

  1. android导航栏自动弹出,解决android 显示内容被底部导航栏遮挡的问题

    描述: 由于产品需求,要求含有EditText的界面全屏显示,最好的解决方式是使用AndroidBug5497Workaround.assistActivity(this) 的方式来解决,但是华为和魅 ...

  2. Android隐藏底部导航栏三大金刚按钮

    注:非uid.system项目不用看了....避免看完尝试不行,233333 定制化项目难免会用到这种需求,要就隐藏底部导航栏,让用户不能点击,底部导航栏的3大金刚分别就是我们看到的-返回键.home ...

  3. android底部导航栏网络请求有冲突,Android 自定义底部导航栏 CustomizeTabLayout(支持访问网络图片、本地图片)...

    先看效果 网络图片(使用第三方库Glide加载图片) GIF1.gif 本地图片 GIF2.gif 使用方法 xml(布局可关联鸿洋大神的AutoLinearLayout可完美适配) activity ...

  4. Android界面被底部导航栏挡住

    资料 解决android 显示内容被底部导航栏遮挡的问题 AndroidBug5497Workaround Android手机底部NavigationBar挡住界面的解决方法 android 显示内容 ...

  5. android——暴力隐藏底部导航栏

    最近在做平板项目,boss要求隐藏掉底部导航栏,各种谷歌百度了半天,可愁死我了.因为导航栏是系统自带的,要实现隐藏要么修改framwork层代码,要么想点别的招.本宝菜鸟一只,哪里会啥修改framwo ...

  6. php仿微信底部菜单,Android实现简单底部导航栏 Android仿微信滑动切换效果

    Android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义View配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...

  7. android仿微信的activity平滑水平切换动画,Android实现简单底部导航栏 Android仿微信滑动切换效果...

    Android实现简单底部导航栏 Android仿微信滑动切换效果 发布时间:2020-10-09 19:48:00 来源:脚本之家 阅读:96 作者:丶白泽 Android仿微信滑动切换最终实现效果 ...

  8. Android studio实现底部导航,AndroidStudio制作底部导航栏以及用Fragment实现切换功能...

    前言 大家好,我是 Vic,今天给大家带来AndroidStudio制作底部导航栏以及用Fragment实现切换功能的概述,希望你们喜欢 学习目标 AndroidStudio制作底部导航栏以及用Fra ...

  9. android滑动菜单图标,Android实现简单底部导航栏 Android仿微信滑动切换效果

    Android仿微信滑动切换最终实现效果: 大体思路: 1. 主要使用两个自定义View配合实现; 底部图标加文字为一个自定义view,底部导航栏为一个载体,根据需要来添加底部图标; 2. 底部导航栏 ...

最新文章

  1. Invalid bound statement (not found): com.xsw.dao.CategoryDao.getCategoryById] with root cause
  2. java solar_java中的内部类总结
  3. 获取手机当前显示的ViewController
  4. 使用注解实现ssh整合
  5. (转)Android中尺寸单位杂谈
  6. Php公钥加密data是空,php 生成加密公钥加密私钥实例详解
  7. 解决PhoneGap在Android手机上的全屏问题
  8. java3D反恐精英3_统一5.3.0f4错误CS0029;不能隐式转换'UnityEngine.Vector3'类型为'float'...
  9. Model与Record转换适配
  10. 中国鲆鱼养殖产业呈现集聚趋势,主要集中于山东、辽宁两地「图」
  11. TRNSYS模块中英文对照
  12. Docker执行命令提示设备没有相对空间,无法创建,overlay2文件夹磁盘占满
  13. 拜托,大厂做项目可不简单!
  14. 发育网络(DN): 一个涌现的图灵机
  15. python ERROR: Could not find a version that satisfies the requirement requests (from versions: none)
  16. 既生xargs何生parallel
  17. excel 运算十分缓慢和卡顿怎么办?
  18. 【运筹学】单纯性法求解线性规划问题与对偶问题
  19. Linux使用wget下载文件时报错
  20. 大数据 / 大屏数据展示模板

热门文章

  1. 《OSPF和IS-IS详解》
  2. 开发规范 - UML图
  3. Dinic算法(研究总结,网络流)
  4. 游戏AI的生命力源自哪里?为你揭开MOBA AI的秘密!
  5. 在线报表设计实战系列 – 制作动态列与静态列混排的报表(5)
  6. [验证码实现] Captcha 验证码类,一个很个性的验证码类 (转载)
  7. C#读取文件-古文观止(总结一下)
  8. 在线PS(PhotoShop),打开PSD文件,图像处理
  9. ReactiveSwift源码解析(三) Signal代码的基本实现
  10. 【C++】日期类+日期万年历+日期计算器