上回书说到了ExpandableListView的基本用法,今天聊聊它的点击事件
给组添加点击事件
list.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View v,int groupPosition, long id) {
Toast.makeText(MainActivity.this, "点击group", 0).show();
return false;//注意,这里要返回false,否则你的列表将不能展开,因为true是告诉系统不用再处理了。。
}
});
给子添加点击事件
list.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
@Override
public boolean onChildClick(ExpandableListView parent, View v,int groupPosition, int childPosition, long id) {
Toast.makeText(MainActivity.this, "点击child", 0).show();
return true;
}
});
就这样,简单吧。
另外在网上看见了一些东西,比如list.setGroupIndicator(null);这样会隐藏掉组列表的箭头(虽然并没看到效果),要是像做一个不需要扩展开的列表,可以先将组列表展开,然后在组点击事件什么都不做并返回true
for(int i=0;i<armTypes.length;i++){
list.expandGroup(i);
}
写个循环遍历所有组内容并展示,这样程序运行后组列表就会是全部展开的样式。