`

ExpandableListView

 
阅读更多

  最近想做依照QQ做些那样的效果,所以就用到了ExpandableListView,在网上搜集了一些,在加上自己的总结,如下:

  1.自定义 ExpandableListView 的group的样式

   目的:把小箭头放在右边

   先把 groupIndicator 属性禁掉,android:groupIndicator="@null",然后把自定义的布局加入

复制代码
        @Override
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View view = li.inflate(R.layout.expandable_group, null);
ImageView mgroupimage=(ImageView)view.findViewById(R.id.groupimage);
if(!isExpanded){
mgroupimage.setBackgroundResource(R.drawable.btn01);
}else{
mgroupimage.setBackgroundResource(R.drawable.btn02);
}
TextView tv = (TextView) view.findViewById(R.id.groupname);
tv.setText(groups[groupPosition]);
return view;
}
复制代码

 

  2.只展开一个group,点第一个gorup后,再点第二个group时,第一个会自动收缩  

复制代码
expandablelistview.setOnGroupExpandListener(new OnGroupExpandListener(){

@Override
public void onGroupExpand(int groupPosition) {
// TODO Auto-generated method stub
for(int i=0;i<groups.length;i++){
if(groupPosition != i){
elv.collapseGroup(i);
}
}
}});
复制代码

  3.点击时会出现全部变为黑色的情况  

expandablelistview.setCacheColorHint(0);

     使用前:

                  

  4.如果group没有child时,就不让它展开  

复制代码
        expandablelistview.setOnGroupClickListener(new OnGroupClickListener(){

@Override
public boolean onGroupClick(ExpandableListView parent, View v,
int groupPosition, long id) {
// TODO Auto-generated method stub
if(childs.get(groupPosition).isEmpty()){
return true;
}
return false;
}});
复制代码


  5.

android:groupIndicator            定义group行的指示图标的样式,展开和收缩时图标的变换                                                                                                                                         
android:childIndicator  定义child行的指示图标的样式 
android:drawSelectorOnTop 为true时,点击时,出现的颜色会把文字覆盖住,为false时,不会
 android:transcriptMode  需要用ListView或者其它显示大量Items的控件实时跟踪或者查看信息,并且希望最新的条目可以自动滚动到可视范围内。

通过设置的控件transcriptMode属性可以将Android平台的控件(支持ScrollBar)自动滑动到最底部

android:fadingEdge 设置上边和下边的阴影

 android:fadeScrollbars

滚动条的自动隐藏和显示。

   
   
分享到:
评论

相关推荐

    自定义ExpandableListView结合Sqlite

    在Android开发中,`ExpandableListView`是一种可扩展的列表视图,允许用户折叠和展开子项,这对于显示层次结构的数据非常有用。本教程将深入探讨如何自定义`ExpandableListView`并结合SQLite数据库来实现数据的动态...

    expandablelistview自定义实现单选效果

    在Android开发中,ExpandableListView是一个非常有用的控件,它允许我们展示可折叠的列表,通常用于层次结构的数据展示。本教程将详细讲解如何自定义ExpandableListView,使其一级标题具有类似于RadioButton的单选...

    ExpandableListView实现购物车页面

    在Android应用开发中,"ExpandableListView实现购物车页面"是一个常见的需求,它涉及到用户界面设计、数据管理和交互。ExpandableListView是Android SDK提供的一种可扩展的列表视图,允许用户展示分组数据,每组内...

    ExpandableListView展开折叠动画效果

    在Android开发中,`ExpandableListView`是一种常用的控件,用于展示可以展开和折叠的列表。这个控件允许用户在一级列表项下显示更详细的数据,通常用于构建层级结构清晰的列表,例如菜单、目录或者分类信息。在给定...

    ExpandableListView实现二级列表购物车

    "ExpandableListView实现二级列表购物车" ExpandableListView是Android中的一种视图组件,用于显示二级列表的数据。它可以将数据分组显示,方便用户浏览和操作。下面我们来详细介绍如何使用ExpandableListView实现...

    ExpandableListView 长按事件demo

    在Android开发中,`ExpandableListView`是一种常用的控件,它允许用户展示可折叠的列表,其中每个父项可以展开显示多个子项。这个控件非常适合于需要层次结构数据展示的应用,例如目录树、菜单或者分类信息。在这个...

    ExpandableListView仿QQ列表的实现

    在Android开发中,`ExpandableListView`是一种常用的控件,它可以展示可折叠的子列表,类似于QQ应用中的联系人列表。这个"ExpandableListView仿QQ列表的实现" demo旨在教你如何利用`ExpandableListView`创建类似QQ...

    ExpandableListView 解决子级背景色混乱 和父级展开项唯一效果实现

    在Android开发中,ExpandableListView是一个非常常用的控件,它允许我们展示层次结构的数据,比如一个树状结构。然而,在实际使用过程中,开发者经常会遇到一些问题,如子级条目的背景色混乱以及如何实现父级展开项...

    ExpandableListView的使用实例

    在Android开发中,`ExpandableListView`是一种常用的控件,它允许用户展开和折叠分组,每个分组下可以包含多个子项。这种控件在显示层次结构数据时非常实用,比如目录结构、菜单列表或者分类信息展示。下面将详细...

    android ExpandableListView三级菜单的使用

    在Android开发中,`ExpandableListView`是一种常用的控件,它可以展示可展开和折叠的列表,通常用于构建具有层级结构的数据展示。在这个“android ExpandableListView三级菜单的使用”示例中,我们将深入探讨如何...

    一个ExpandableListView的例子,实现多级菜单分类展示

    在Android开发中,`ExpandableListView`是一种常用的控件,它允许我们展示具有层次结构的数据,比如一个多级菜单分类的场景。在这个例子中,我们将会深入探讨如何利用`ExpandableListView`来创建一个可展开和折叠的...

    自定义ExpandableListView 、Json解析、短信等

    主要四部分内容:自定义ExpandableListView ,Json解析,短信,DatePickerDialog Json解析格式: { "help_count": "16", "date": "2012-06-15", "items": [ { "title":"PP(通讯达人)是什么?", "content":"PP...

    ExpandableListView子item选中颜色发生改变

    在Android开发中,`ExpandableListView`是一种常用的控件,它允许用户展开和折叠分组,每个分组下可以有多个子项。当涉及到用户体验优化时,改变`ExpandableListView`子item选中状态的颜色是一种常见做法,可以提高...

    ExpandableListView实现下拉功能

    在Android开发中,`ExpandableListView`是一种常用的控件,用于展示可以展开和折叠的列表,通常用于构建层级结构的数据展示。在这个特定的实现中,我们关注的是如何去除下拉标志,并实现点击新组时自动关闭其他已...

    自定义带CheckBox的ExpandableListView

    在Android开发中,`ExpandableListView`是一种常用的控件,它允许用户展开和折叠不同的组,每个组下还可以包含多个子项。这个控件在显示层次结构数据时非常有用,例如菜单、设置列表等。而将`CheckBox`与`...

    ExpandableListView,recyclerview的使用

    在Android开发中,`ExpandableListView`、`RecyclerView`以及`ListView`是三种常见的列表控件,用于展示可滚动的数据集合。本篇文章将深入探讨这三个组件的使用方法、特点及它们之间的区别。 首先,`...

    ExpandableListView(实现ListView嵌套ListView的效果)

    在Android开发中,`ExpandableListView`是一种非常实用的控件,它允许开发者创建具有可扩展行的列表,也就是我们常说的嵌套列表。这种控件可以用来展示层次结构的数据,比如目录结构、菜单选项或者复杂的分类信息。...

    Android实现自定义适配器的ExpandableListView示例.rar

    Android实现自定义适配器的ExpandableListView示例,准备一级列表中显示的数据:2个一级列表,分别显示"group1"和"group2",准备第一个一级列表中的二级列表数据:两个二级列表,分别显示"childData1"和"childData2",...

Global site tag (gtag.js) - Google Analytics