最近为了符合UI的要求,所以重新定义了ExpandableListView中的child的layout,布局,而且为了以后可以更好的对分割线进行控制,所以对分割线进行了重新定义。
思路如下 ,
以前分割线的样式比较单一,而且要适应美工的要求有些困难,所以我把它写入到了一个layout里面,我们可以在Expandablelistview的适配器中进行处理,首先我们可以先正常的进行数据的填充,但是在布局中将分割线都设置为空,
也就是这个效果,而在自定义的分隔线View 中,
public MyExpandableSpliteLine(BaseExpandableListAdapter expandableListView) { this(expandableListView, R.layout.group_divider, R.layout.child_divider); } public MyExpandableSpliteLine(BaseExpandableListAdapter expandableListView, int groupline, int childline) { this.elv = expandableListView; this.groupline = groupline; this.childline = childline; }
首先 得先梳理一下Expandable的执行流程
@Override public int getChildTypeCount() { return elv.getChildTypeCount() + 1; } @Override public int getGroupTypeCount() { return elv.getGroupTypeCount() + 1; }