首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

NestedScrollView 嵌套 ListView 实现滑动折叠效果

引言 最近,在做公司一个design折叠效果的时候遇到个问题,就是我们本身app的方法数太多了,dex分包技术还没搞定。不得不尽量缩减一些不必要的包、类。...当我们引入RecyclerView的时候,恰好是压死骆驼的最后一根稻草,故不得不采用其他方案来代替RecyclerView 和 CollapsingToolbarLayout实现折叠效果。...本文试着采用 NestedScrollView 嵌套 ListView的方法来实现折叠效果。具体结果如图所示: ?...app:contentScrim 表示CollapsingToolbarLayout折叠以后,toolbar的颜色。...enterAlways - 实现quick return效果, 当向下移动时,立即显示View(比如Toolbar). exitUntilCollapsed - 向上滚动时收缩View,但可以固定Toolbar

3.4K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    巧用CSS实现折叠手风琴效果

    引言 今天在CodePen[codepen.io] 上面发现了一个使用css实现的一个手风琴效果, 感觉蛮有意思的,于是自己尝试了一下,发现不是特别难, 在编码前把思路整理好,再去实现,就会发现轻松许多...先看一下效果吧,大家提前玩玩,然后我们在一步一步去实现这个效果. 本文会将一些基础的css顺带讲解到, 并将一些写css相关的设计网站资源进行分享. 效果: 实现 盒子背景是一个渐变色....然后我们接着来, 4张图片位于一个大盒子里面. active 类用来将图片撑开的, 后面会通过js 动态添加 和 删除 --url 是我们定义的一个css变量,这里定义的话 值就是每个图片在目录的相对路径...剩下就该js出手了.主要需要完成的事情有: 点击哪个盒子,哪个盒子添加.active 类, 其他元素如果有.active,就要移除. 这里我们可以采取事件委托的方式处理点击事件.

    14410

    小程序-实现折叠面板-手风琴效果

    背景 无论是在小程序还是 h5 网页,折叠菜单,手风琴是一个非常常见的效果,如今也有很多现成的 UI 组件库已经实现了这一效果的,但有时候在写原生小程序时,单单就是一个折叠菜单效果,却要引入整个 UI...库,有点得不偿失 以下就自己手动实现一个的 实例效果 ?...display: none; } 如下是折叠菜单逻辑代码 Page({ /** * 页面的初始数据 */ data: { selected: [false, false...index) { this.setData({ [`selected[${active}]`]: false, }); } }, }); 如上代码就可以实现手风琴的效果...然后列表的数据的名称以及要展示的内容放在一个数组listDatas中,随后,循环列表渲染 在列表中绑定点击事件,在元素上设置data属性,在事件对象中就可以获取到,最终通过setData修改数据,以达到实现手风琴的效果

    3K10

    给 RecyclerView 加上折叠效果

    这次用超简单的方法,让 RecyclerView 带上折叠效果效果是这样的。 image.png 总结一下这个列表的特点,就是以下三点: 重叠效果; 层次感; 首项的差动。...重叠效果 其实就是每一项都搭一部分在它前面那项而已。我们知道,RecyclerView 可以通过设置 ItemDecoration 来实现列表的间隔效果,有没有想过要是把间隔设为负数会怎么样?..., state); outRect.bottom = -dp2px(context, 10); } }); 复制代码 没错,这就实现了我们的重叠效果...首项的差动 最后,我们想给第一项增加一个差动效果,这个同样在 onScrolled 方法里面做处理就好了: View firstView = layoutManager.findViewByPosition...= 0) { view.setTranslationY(0); } 复制代码 这样就完成了一个带有简单折叠效果的 RecyclerView 了,妥妥的。

    1.4K10

    【教程】PPT之折叠效果

    PPT虽然是平面图形、文字效果的制作软件,但实际上在2003版就已经可以为插入的图形、文字叠加立体效果了。不过在扁平化风格盛行的今天,过于立体的效果总让人觉得华而不实。...反倒是本例这样,通过一些文字变形小技巧以及背景明暗对比做出来的3D效果更加受人追捧。 1、使用矩形和梯形绘制墙面。...为了表现出立体的转角效果,为矩形填充浅灰色(白色主题色系列中第二个),为梯形填充略深一些的灰色(白色主题色系列中第三个)。使用文本框工具插入文字内容,字号大小以适合左侧矩形排版为准。 ?...2、同时选中标题和副标题的文本,复制并粘贴为图片格式(具体操作见荧光字效果教程中的相同步骤)。将图片格式的文字复制一份,最后分别按下图所示位置裁剪,一份保留左侧二分之一内容,一份保留右侧二分之一内容。...3、选中右侧二分之一图片,在图片效果中设置三维变体-透视-右透视,进入图片格式详细设置菜单,调整X旋转和透视角度的数值以符合墙面透视,适度缩小以拼合左侧二分之一图片,作品便完成了。 ?

    88920

    JavaScript之JS实现动画效果

    所以为了实现动画效果,我们必须创造出时间间隔来,而这正是实现动画效果的关键!所以我们来说下时间动画效果的第二个要素时间!  ...document.getElementsByName) return false; return true; }       上面这段代码完美的实现了我们想要实现的动画效果...,通过每次移动一点位置和setTimeout()函数配合,实现了这个效果,代码观察代码发现上面这段代码还可以优化,让它变得更加的通用!...上面这段代码实现的特效的是:当鼠标放到超链接上,就能以动画的效果显示对应的字母。...效果很酷,但是代码存在一点小瑕疵,这点我们经常容易忽视,问题就是,当我们把鼠标指针在链接之间快速的来回移动,动画效果将变得混乱起来。

    11.2K81

    JS实现焦点图轮播效果

    其原理是:第一张图片(5.jpg)和最后一张图片(1.jpg)的作用是为了实现无限滚动的效果,因为此效果是通过设置id为list的div容器的left值来实现图片切换的,所以当轮播到第五张图片(5.jpg...由于最后一张图片就是第一张图片(1.jpg),所以用户肉眼看上去没有什么变化,就这样实现了无限滚动的效果,其他同理!...好了,最重要的还是JS实现轮播效果: 首先来实现最简单的通过左右按钮来实现切换: window.onload = function () { var container = document.getElementById...,之前已经实现效果是直接切换,而我们想要的是能够平滑过渡,体验会好一些。...最后实现自动播放效果,当鼠标不点击时,它能自动播放,这里用到setInterval定时器,每次3秒执行一次点击事件,而当鼠标移上去的时候清除该事件,离开的时候又自动播放。

    15.2K61
    领券