想用tweenAnimation来做

res下新建anim文件夹,添加bottom_slide_in.xml和bottom_slide_out.xml

bottom_slide_in.xml

滑入动画,从右边往左边移动,fromXDelta越大,移动距离越远

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"android:duration="350"><translateandroid:fillAfter="true"android:fromXDelta="70%"android:fromYDelta="0%"android:toXDelta="0%"android:toYDelta="0%" /></set>
复制代码

bottom_slide_out.xml

滑出动画,从展示位置往右边移动,toXDelta越大,移动距离越远

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"android:duration="350"><translateandroid:fillAfter="true"android:fromXDelta="0%"android:fromYDelta="0%"android:toXDelta="70%"android:toYDelta="0%" /></set>
复制代码

TestActivity.java

boolean scrollStateOld = true; //默认是展示状态mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {@Overridepublic void onScrollStateChanged(RecyclerView recyclerView, int newState) {switch (newState) {case SCROLL_STATE_IDLE: //空闲状态,停止滚动if (!scrollStateOld) {showBottomSVGA(R.anim.bottom_slide_in); //只show一次}break;case SCROLL_STATE_DRAGGING: //手指拖动,滚动状态case SCROLL_STATE_SETTLING: //手指离开,惯性滚动状态if (scrollStateOld) {showBottomSVGA(R.anim.bottom_slide_out); //只hide一次}break;}}@Overridepublic void onScrolled(RecyclerView recyclerView, int dx, int dy) {Log.e("zhen", "onScrolled: dx: " + dx + "  dy: " + dy);}});private void showBottomSVGA(int animationStyle) {Animation animation = AnimationUtils.loadAnimation(getActivity(), animationStyle);animation.setFillAfter(true); //动画结束后,保持动画结束的状态bottomSVGA.startAnimation(animation);scrollStateOld = !scrollStateOld; //取反}
复制代码

转载于:https://juejin.im/post/5b92518d6fb9a05d171d1f29

按钮滑动隐藏,停止滑动显示的动画相关推荐

  1. 标题滑动隐藏,滑动中背景图标变化,仿淘宝商祥

    先申明菜鸟一枚,有不对的地方欢迎大神指正.编辑的主要目的是记录下最近做的一些效果.仿淘宝商祥标题下拉滑动时的渐变,滑到详情时详情的标题栏固定不动由详情的内容继续滑动.效果如图: 先分两个部分一是滑动的 ...

  2. Vue实现点击按钮上下滑动隐藏或展示查询条件

    如图中的是jquery实现的,那么在vue中如何实现呢? 结合自己的项目进行了整合,具体的额模块代码如下所示: 第一步新建组件js 建个JS文件,随便取个名字,把下面的js复制进去,我这里叫moreS ...

  3. iOS tableView滑动隐藏/显示tabbar

    在需要滑动隐藏/显示的页面中: @property(nonatomic,assign)CGFloat historyY; #pragma mark Delegate //设置滑动的判定范围 - (vo ...

  4. iOS - 实现映客首页 TabBar 和滑动隐藏 NavBar 和 TabBar

    原文链接:http://www.jianshu.com/p/72228667cd7a 之前在做直播的时候,参照了映客 App,发现其首页的效果还挺不错,在网上找了一下相关仿映客 App 代码和博客,大 ...

  5. 对Scrollbar实现平时隐藏,滑动时出现

    最近美术提了一个需求,这个滑动块需要在ScrollView静止时隐藏,滑动时出现. 我尝试了很久,发现ScrollRect下的bar是不可以SetActive(false)的,检视面板上取消也不可以. ...

  6. 直播平台源码实现状态栏滑动隐藏和tabbar的教程

    现在好多应用的首页都要求状态栏和tabbar支持滑动隐藏,直播平台源码又怎能甘心落后于人呢?对于此类需求,我们可以使用UICollectionView来进行功能实现,UICollectionView ...

  7. android gridview滑动监听,Android GridView 滑动条设置一直显示状态(推荐)

    Android GridView 滑动条设置一直显示状态(推荐) 模拟GridView控件: android:id="@+id/picture_grid" android:layo ...

  8. Wear OS手表应用开发教程之-滑动隐藏布局-SwipeDismissFrameLayout

    本文目录 点击直达 Wear OS手表应用开发系列教程 点击直达 本文标签 `路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢` 前言: 利弊解析: 效果展示: 使用方法: 结语: 最后我还 ...

  9. css中侧边导航栏怎么隐藏,CSS3手机侧边导航栏滑动隐藏特效

    [温馨提示]源码包解压密码:www.youhutong.com 效果图: 描述说明: 共4种CSS3手机侧边导航栏滑动隐藏特效 1.默认的点击滑动侧边栏菜单效果. 2.带3D transforms的滑 ...

  10. 使用FloatingActionButton滑动消失后不再显示

    问题背景 最近将将SDK升级到25之后遇到一问题就是,FloatingActionButton可以正常显示,但是列表上滑动隐藏后,再向下滑动,FloatingActionButton不在显示出来.之前 ...

最新文章

  1. python有趣小程序 表白-抖音最火的整蛊表白小程序如何做出来的?教你用python做出...
  2. 深入剖析分布式监控 CAT —— 消息文件存储
  3. Android设置布局位置五等分,五等分划分屏幕
  4. 企业面试题库_数据库部分
  5. [深度学习] 自然语言处理 --- BERT模型原理
  6. 【单调栈】Largest Rectangle in a Histogram(luogu-SP1805/poj 2559)
  7. 用Lucene建立搜索索引
  8. 深入浅出讲解C语言#define宏定义应用及使用方法
  9. jQuery之合成事件
  10. vscode保存react时标签出现空格自动换行报错
  11. 浅谈Hybrid技术的设计与实现
  12. 精通Android【Android移动开发制胜宝典】
  13. OpenCV图像模糊处理
  14. 湖北省软件行业协会会员单位全名录(2014年的信息)
  15. Minimum Flips to Make a OR b Equal to c(C++ 或运算的最小翻转次数)
  16. find7刷Android,OPPO Find 7刷Color OS 2.0教程
  17. vue 键盘(上下左右)快捷键
  18. 汇编基础2:看懂汇编
  19. 自己总结的常见命令(用过的)
  20. JSONObject转对象

热门文章

  1. poj2140---herd sums
  2. phpmyadmin 主机名自动补全
  3. urllib,urlib2与httplib,urllib3
  4. [转载] 30分钟泛型教程
  5. 收集常用的正则表达式
  6. Java 面向对象细节
  7. 从 for of 聊到 Generator
  8. 为 Python Web App 编写 Dockerfiles
  9. Windows Server 2008 R2模板机制作(VMware Workstation)
  10. SpringMVC+Mybatis+MySQL配置Redis缓存