Recyclerview实现滑动居中缩放菜单

news2024/11/18 11:28:23

最近项目中需要的一个滑动菜单效果:要求当前居中选项放大、滑动时有缩放效果、点击两边的选项滑动到屏幕中央、停止滑动选项停留在屏幕中间(类似viewPager的效果),为了直观,先上最终实现效果图:
在这里插入图片描述
大体思路:

  • Recyclerview item头尾添加空数据,让第一个和最后一个item也能停留在中间;
  • Recyclerview+SnapHelper实现viewPager的效果;
  • 添加Recyclerview滑动监听,根据滑动情况动态缩放view的大小。

下面看具体的实现步骤 - - -

1、Recyclerview的初始化

 private int pageItemCount = 5;//整个屏幕显示多少个item
 recyclerView.post(new Runnable() {
   
            @Override
            public void run() {
   
                rcViewWidth = recyclerView.getMeasuredWidth();
                //每个item的宽度
                itemWidth = rcViewWidth / pageItemCount;
                int[] menuImgs = new int[]{
   R.mipmap.icon_menu_face, R.mipmap.icon_menu_car, R.mipmap.icon_menu_remote,
                        R.mipmap.icon_menu_scan

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2136541.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机组成原理(第二次笔记)

各种码 真值 (书写用): 将用“”、“-” 表示正负的二进制数称为真值 机器不能识别书写格式,故用“0/1”表示“/-”符号。 机器码 (机器内部使用): 将符号和数值一起编码表示的二进制数称为机器码。 常用机器码:原码、 反码、 补…

Linux网络编程 --- 高级IO

前言 IO Input&&Output read && write 1、在应用层read && write的时候,本质把数据从用户层写给OS --- 本质就是拷贝函数 2、IO 等待 拷贝。 等的是:要进行拷贝,必须先判断读写事件成立。读写事件缓冲区空间满…

Kafka+PostgreSql,构建一个总线服务

之前开发的系统,用到了RabbitMQ和SQL Server作为总线服务的传输层和存储层,最近一直在看Kafka和PostgreSql相关的知识,想着是不是可以把服务总线的技术栈切换到这个上面。今天花了点时间试了试,过程还是比较顺利的,后续…

破解AI生成检测:如何用ChatGPT降低论文的AIGC率

学境思源,一键生成论文初稿: AcademicIdeas - 学境思源AI论文写作 降低论文的“AIGC率”是个挑战,但有一些策略可以尝试。使用ChatGPT逐步调整和改进内容,使其更加自然和原创,降低AI检测工具识别出高“AIGC率”的概率…

专访阿里云:AI 时代服务器操作系统洗牌在即,生态合作重构未来

编者按:近日,2024 龙蜥操作系统大会已于北京圆满举办。大会期间,CSDN 采访了阿里云基础软件部资深技术总监、龙蜥社区技术委员会主席杨勇,前瞻性宏观解读面向 AI 智算时代,服务器操作系统面临的挑战与机遇。以下为采访…

云曦2024秋考核

真正的hacker 进去以后一眼就能看出来,是ThinkphpV5漏洞,只是版本不能确定,一开始考核的时候是,抓包看了php的版本,是7.23,是手注了几个尝试出来的(后面才发现报错信息里面就有)。漏…

记录word转xml文件踩坑

word文件另存为xml文件后,xml文件乱码 解决方法: 1.用word打开.docx文件 2.另存为xml文件 3.点击工具 -> Web选项 -> 编码,选择UTF-8 4.点击确定 5.使用notpad打开xml文件 6.使用xml tool进行xml格式化即可。

【免费资料推荐】数据资产管理实践白皮书(6.0版)

荐言:随着数字经济的快速发展,数据已成为企业最重要的资产之一。为有效管理和利用数据资产,各行业纷纷推出数据管理框架和标准。数据资产管理实践白皮书(6.0版)由中国信息通信研究院联合相关企业共同编写,是…

利士策分享,细品礼仪之美:在日常中优雅相处的艺术

利士策分享,细品礼仪之美:在日常中优雅相处的艺术 在当今这个快节奏、高压力的社会里,人与人之间的交往似乎被简化成了快餐式的信息交流。 然而,根植于文化深处的礼仪之花,依然是促进社会和谐、深化人际关系的宝贵财富…

python使用Pandas读取excel的行列内容

我的Excel文件名称是“测试.xlsx” 首先读取excle的文件内容 import pandas as pd dfpd.read_excel(测试.xlsx) #这个会直接默认读取到这个Excel的第一个sheet print(df)可以看看输出的是什么: 2. df.loc[0],表示读取Excel的第一行(这里…

docker容器中的内存占用高的问题分析

文章目录 问题描述原因分析分析1分析2验证猜想 结论和经验 问题描述 运维新增对某服务的监控后发现:内存不断上涨的现象。进一步确认,是因为有多个导出日志操作导致的内存上涨问题。 进一步的测试得出的结果是:容器刚启动是占用内存约为50M…

白话:大型语言模型中的幻觉(Hallucinations)

大型语言模型(LLM)可是自然语言处理和人工智能的一大步。它们能做的事情可多了,比如生成听起来挺靠谱的文本,翻译语言,总结文档,甚至写诗。但你知道吗,这些模型有时候会出现 “幻觉(…

音视频开发常见的开源项目

FFmpeg 地址:https://ffmpeg.org/介绍:FFmpeg 是一个非常强大的开源多媒体框架,它可以用来处理视频和音频文件。它支持多种格式的转换、编码、解码、转码、流处理等。FFmpeg 包括了 libavformat、libavcodec、libavutil、libswscale、libpos…

Matlab求解微分方程(解析解与数值解)

matlab求解微分方程解析解和数值解 Matlab求微分方程解析解例题1例题2例题3 Matlab求微分方程数值解一阶微分方程例题一例题二 高阶微分方程例题 Matlab求微分方程解析解 dsolve(eqns,conds,options) eqns:微分方程(组)、conds:初值条件、opt…

萌宠宜家商城系统

摘 要 随着现在经济的不断发展和信息技术性日益完善和优化,传统式数据信息的管理升级成手机软件存放、梳理和数据信息集中统一处理的管理方式。本萌宠物宜家商城系统软件起源于这个环境中,能够帮助管理者在短期内进行庞大数据信息。使用这个专业软件能够…

【开源免费】基于SpringBoot+Vue.JS购物商城网站(JAVA毕业设计)

本文项目编号 T 032 ,文末自助获取源码 \color{red}{T032,文末自助获取源码} T032,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

文字识别多功能工具箱 | eSearch v13.1.6

eSearch v13.1.6 是一款开源的截屏识屏搜索工具,它提供了丰富的功能,包括截屏、OCR识别、搜索翻译、贴图、以图搜图和录屏等一体化实用工具。该软件基于 Electron 框架开发,适用于 Linux、Windows 和 macOS 平台。 软件的主要特点和功能包括…

Lua发邮件:实现自动化邮件发送教程指南!

Lua发邮件高级技巧有哪些?如何利用Lua发送电子邮件? 自动化邮件发送是一个非常实用的功能,广泛应用于各种场景,如通知、提醒、报告生成等。Lua作为一种轻量级脚本语言,因其简洁和高效而受到广泛欢迎。AokSend将详细介…

金钥匙系列:Kubernetes (K8s) 服务集群技术栈学习路线

维护Kubernetes (K8s) 服务集群是一个复杂且多层次的技术任务,涉及容器化技术、集群管理、网络、安全、监控等多个领域。为了成为一名优秀的K8s集群维护工程师,技术栈需要广泛且深入。本文将为你详细介绍从零开始到深入掌握K8s集群维护的职业技术栈学习路…

在 Mac 上安装双系统会影响性能吗,安装双系统会清除数据吗?

在 Mac 系统安装并使用双系统已经成为了许多用户办公的选择之一,双系统可以让用户在 Mac 上同时运行 Windows 或其他操作系统。然而,许多用户担心这样做会对 Mac 的性能产生影响。 接下来将给大家介绍 Mac 装双系统会影响性能吗,Mac装双系统…