ExpandableListView控件使用中一些小问题的总结
来源:互联网 发布:携程 知乎 虐童 编辑:程序博客网 时间:2024/05/16 23:40
ExpandableListView控件,很好的解决了listView无法进行折叠和分类的功能(在不进行自定义的情况)。但是它也有一些无法解决的问题,比如伸缩没有动画,前方的箭头位置不能更换,也不能更换图标等。
单位的项目整好用到这样的一个功能,就看了一下,现在把它做一下总结。效果如图:
这个图是最后的效果,采用的是第三方开源的AnimatedExpandableListView控件,不用担心,它是继承ExpandableListView,添加了伸缩动画。
ExpandableListView控件在使用的时候,经常会遇到以下几个问题:
1、去掉父项最左侧的上下箭头或是将它移动到最右侧
2、点击父项展开子项的时候,有互斥的效果。就是一个展开,其它的就全是关闭
3、点击父项展开子项时,有相应的动画
下面我们就一一说明以上三个问题
1、去掉父项最左侧的上下箭头或是将它移动到最右侧
这个功能,去掉父项最左侧的上下箭头,比较简单,一行代码
//去掉前面一剪头 ExpandableListView.setGroupIndicator(null);
将它移动到最右侧,不好意思,这个没有方法,你只能自己处理,简单的方法就是去掉左侧的箭头,然后在右侧自己加图片处理。这个比较简单,只要在Adapter里的getGroupView方法添加就行
此方法有一个变量boolean isExpanded,它就是用来判断状态的,根据不同的状态,你换一下右侧的图片就OK了,如下
if (isExpanded) { gHolder.gnextIv.setImageResource(R.mipmap.ico_push_bot); }else { gHolder.gnextIv.setImageResource(R.mipmap.ico_next); }
2、点击父项展开子项的时候,有互斥的效果。就是一个展开,其它的就全是关闭
这个功能,只要我们重写setOnGroupExpandListener方法就OK了
/** * 各项显示互斥,就是一个展开,另外的关闭 */ el_list.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() { @Override public void onGroupExpand(int groupPosition) { for (int i = 0; i < mAdapter.getGroupCount(); i++) { if (groupPosition != i) { el_list.collapseGroup(i); } } } });
3、点击父项展开子项时,有相应的动画
这个只能使用第三方控件,本身没有法子。我使用的是AnimatedExpandableListView,说到这里,我自己都在想,前面说了半天,有毛用啊。使用了第三方控件,前两个不是白说。这里强调一下,这个控件是继承自ExpandableListView的,也就是上面说的两点,在这里都同样实用。
下载:https://github.com/idunnololz/AnimatedExpandableListView
例子下载:http://download.csdn.net/detail/chenguang79/9759622
- ExpandableListView控件使用中一些小问题的总结
- mfc 控件使用的一些小问题
- Android中ExpandableListView控件的使用
- ExpandableListView的一些问题
- ExpandableListView控件的使用
- ExpandableListView使用中遇到的各种问题
- ExpandableListView的使用总结
- 关于android中ExpandableListView控件的展开刷新问题
- 使用Expandablelistview控件出现二级菜单出不来的问题
- 关于Linq使用过程中遇见的一些小问题的总结
- ExpandableListView的使用小技巧
- android 中可展开控件ExpandableListView的使用
- [总结]使用WPF路由事件过程中遇到的一些小问题
- 开发过程中 遇到的一些小问题 总结一下
- 最近在项目中总结的一些小问题
- SQLSERVER2000使用中遇到的一些小问题,不断更新中。。。
- Android中ExpandableListView控件基本使用
- Android中ExpandableListView控件基本使用
- Java远程调试原理与运用
- 让你尖叫的游戏开发工具清单
- 遇到问题了怎么办
- 一般电商欢迎页面 带3秒跳
- tensor flow 与dask
- ExpandableListView控件使用中一些小问题的总结
- CS0163号错误是什么
- java File 类常用操作,和java 文件流常用操作演示
- ALV tree展BOM
- sql sever增删查改之--------------删除
- 生命定制方法和bean后处理器
- github删除敏感信息
- 主函数 main WinMain _tmain _tWinMain 的区别
- JSP