如何通过xml突出显示组扩展的ExpandableListView组?

时间:2014-05-05 10:52:53

标签: android xml expandablelistview

我希望在ExpandableListView打开时突出显示组{{1}}。我意识到我需要制作选择器。我可以在XML布局中使用组选择器吗?

1 个答案:

答案 0 :(得分:2)

ExpandableListView有一个名为android:listSelector的属性,你可以传递一个选择器,但是如果扩展或不扩展,我找不到可以使用的状态。当触摸groupItem时,使用android:state_pressed似乎有效,但在释放之后,它的状态又恢复了,突出显示消失了。

我最终做的是检查ExpandableListView Adapters getGroupView函数中的isExpanded值,并根据该值设置返回的Views背景:

@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
    if(convertView == null){
        convertView = infalInflater.inflate.....;
    }
    if(isExpanded){
       convertView.setBackgroundResource(R.drawable.listgroup_background_active);
    }else{
        convertView.setBackgroundResource(R.drawable.listgroup_background);
    }
    return convertView;
}

希望这有帮助