展会信息港展会大全

Android 关于ExpandableListView的一个问题解决
来源:互联网   发布日期:2015-11-26 11:17:24   浏览:1978次  

导读:客户提出需求,要求分组列表单击一个group其他的group应该关闭,这个group的group标题应该顶头。我网上大致找了一圈没找到相关的,于是去google group里搜索了下 ,发现有人提出了他的解决方法:http://groups......

客户提出需求,要求分组列表单击一个group其他的group应该关闭,这个group的group标题应该顶头。

我网上大致找了一圈没找到相关的,于是去google group里搜索了下 ,发现有人提出了他的解决方法:

http://groups.google.com/group/Android-developers/browse_thread/thread/638f7ae1cb75b710/0154a631a2f38717?lnk=gst&q=setOnGroupClickListener#0154a631a2f38717

受此启发我想出了自己的方法,重写setOnGroupClickListener方法,使用flag控制:

定义flag记录列表状态

int expandFlag = -1;//控制列表的展开

重写onGroupClick方法

ExpandableListView listView = getExpandableListView();

listView.setOnGroupClickListener(new OnGroupClickListener() {

@Override

public boolean onGroupClick(ExpandableListView listView, View v,

int groupPosition, long id) {

if (expandFlag == -1) {

//展开被选的group

listView.expandGroup(groupPosition);

//设置被选中的group置于顶端

listView.setSelectedGroup(groupPosition);

expandFlag = groupPosition;

} else if (expandFlag == groupPosition) {

listView.collapseGroup(expandFlag);

expandFlag = -1;

} else {

listView.collapseGroup(expandFlag);

//展开被选的group

listView.expandGroup(groupPosition);

//设置被选中的group置于顶端

listView.setSelectedGroup(groupPosition);

expandFlag = groupPosition;

}

return true;

}

});

赞助本站

人工智能实验室

相关热词: ExpandableListView

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港