YCExpandView-自定义折叠布局,自定义折叠和展开布局,在不用改变原控件的基础上,就可以实现折叠展开功能,入侵性极低。可以设置折叠和展开的监听事件,可以支持支持常见的文本折叠,流失布局标签折叠,或者RecyclerView折叠等功能。十分方便,思路也比较容易理解,代码不超过300行…….zip


-
YCExpandView01.该库介绍02.效果展示03.如何使用04.注意要点05.优化问题06.部分代码逻辑01.该库介绍自定义折叠和展开布局,在不用改变原控件的基础上,就可以实现折叠展开功能,入侵性极低。主要的思路是,设置一个折叠时的布局高度,设置一个内容展开时的高度,然后利用属性动画去动态改变布局的高度。可以设置折叠和展开的监听事件,方便开发者拓展其他需求。可以设置动画的时间。可以支持支持常见的文本折叠,流失布局标签折叠,或者RecyclerView折叠等功能。十分方便,思路也比较容易理解,代码不超过300行……02.效果展示03.如何使用设置文本控件<com.ycbjie.expandlib.ExpandLayout android:id="@ id/expand" android:layout_width="match_parent" android:layout_height="wrap_content"> <TextView android:id="@ id/tv" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="10dp" android:text=""/> </com.ycbjie.expandlib.ExpandLayout>如何切换展开和折叠//初始化操作 expand.initExpand(false ,mHeight); //设置动画时间 expand.setAnimationDuration(300); //折叠或者展开操作后的监听 expand.setOnToggleExpandListener(new ExpandLayout.OnToggleExpandListener() { @Override public void onToggleExpand(boolean isExpand) { if (isExpand){ ivExpand.setBackgroundResource(R.mipmap.icon_btn_collapse); }else { ivExpand.setBackgroundResource(R.mipmap.icon_btn_expand); } } }); //折叠view expand.collapse(); //展开view expand.expand(); //查看控件是折叠还是展开状态 expand.isExpand(); //这个是置反操作 expand.toggleExpand();04.注意要点05.优化问题1.在从折叠状态到伸展状态,或者反之。只要是在动画过程中,则执行动画的过程中屏蔽事件传递2.当控件销毁后,在onDetachedFromWindow方法中,手动销毁动画3.针对折叠和伸展状态之间切换,如果动画在执行中,即使调用多次toggleExpand()方法,避免频繁调用collapse或者expand4.如果开发者使用该折叠控件时,设置折叠时的高度为0,则会抛出异常
-
2019-09-23
如何实现文章的收起展开功能?_course
2013-11-11如题。如何实现文章的收起展开功能?由于文章太长,如果全部显示的话,占了整个一大页,能不能实现点击“收起”,只把文章开始的一部分显示出来,点击展开后就全部显示出来?
2.55MB
在Flutter中实现的简单折叠单元格小部件
2019-08-10在Flutter中实现的简单折叠单元格小部件。 它是一个小部件,所以将其作为子项添加到任何容器小部件。
342KB
Android 仿大众,美团下拉菜单ExpandTabView
2016-08-04原文地址:https://github.com/yueyueniao2012/ExpandTabView 详解地址:http://blog.csdn.net/dodod2012/article/det
4.63MB
类似淘宝订单列表(多于两条的时候收起可展开)RecyclerView+CardView实现
2015-06-27类似淘宝的订单列表展示,单个订单多于两个商品时可收起显示更多
RecycleView上拉下拉收起展开+悬浮头部_course
2017-06-19想要实现类似现版QQ的联系人列表效果。列表可以点击展开收起,列表头部上滑时可以悬浮,使用RecycleView实现这样的功能。请各位路过的大神给给建议或实例,头疼好几天了。
-
学院
MySQL 视图
MySQL 视图
-
学院
投标方法论
投标方法论
-
下载
Aoutdac快捷键.docx
Aoutdac快捷键.docx
-
学院
MySQL 数据类型和运算符
MySQL 数据类型和运算符
-
博客
详解CSS和JS动画底层原理及如何优化它们的性能
详解CSS和JS动画底层原理及如何优化它们的性能
-
博客
php 二进制安装
php 二进制安装
-
下载
管家婆食品行业管理系统最新版V9.4免狗补丁---不限用户版.txt
管家婆食品行业管理系统最新版V9.4免狗补丁---不限用户版.txt
-
博客
计算机网络总结
计算机网络总结
-
学院
C/C++反汇编解密
C/C++反汇编解密
-
学院
Oracle_11g_Linux到Linux_DataGuard部署
Oracle_11g_Linux到Linux_DataGuard部署
-
下载
电容降压的原理和电容降压LED驱动电路.doc
电容降压的原理和电容降压LED驱动电路.doc
-
学院
P1Python100练从入门到入土系列
P1Python100练从入门到入土系列
-
学院
CCNA_CCNP 思科网络认证 《 站点间 NNN 与 远程访问 V
CCNA_CCNP 思科网络认证 《 站点间 NNN 与 远程访问 V
-
学院
计算机网络 静态路由和动态路由协议
计算机网络 静态路由和动态路由协议
-
学院
【超强干货分享】Java程序员算法面试「通关秘籍」
【超强干货分享】Java程序员算法面试「通关秘籍」
-
博客
AtCoder Beginner Contest 194 D-E
AtCoder Beginner Contest 194 D-E
-
博客
Nginx——安装Nginx1.6.1
Nginx——安装Nginx1.6.1
-
下载
TP5400充放电二合一锂电池管理.pdf
TP5400充放电二合一锂电池管理.pdf
-
学院
SpringBoot2.x整合支付宝支付最新版实战开发
SpringBoot2.x整合支付宝支付最新版实战开发
-
下载
最简单的视音频播放示例 1.1
最简单的视音频播放示例 1.1
-
博客
fixed布局内部元素错位
fixed布局内部元素错位
-
下载
bitnami-redmine-4.1.1-2-linux-x64-installer.run
bitnami-redmine-4.1.1-2-linux-x64-installer.run
-
博客
vcenter RCE CVE-2021-21972 漏洞复现与分析
vcenter RCE CVE-2021-21972 漏洞复现与分析
-
学院
MySQL 设计基础(数据库概论、初探)
MySQL 设计基础(数据库概论、初探)
-
下载
用硬盘音圈电机DIY摇摆显示钟.docx
用硬盘音圈电机DIY摇摆显示钟.docx
-
学院
MySQL 函数、用户自定义函数
MySQL 函数、用户自定义函数
-
学院
《文件和目录操作命令》<Linux核心命令系列Series> <2.>
《文件和目录操作命令》<Linux核心命令系列Series> <2.>
-
下载
AX200个版本驱动.rar
AX200个版本驱动.rar
-
学院
CCNA_CCNP 思科网络认证 通过 GNS3 配置 CISCO 思
CCNA_CCNP 思科网络认证 通过 GNS3 配置 CISCO 思
-
下载
MCP6001T-E.数据手册
MCP6001T-E.数据手册