您的位置:首页 > 其它

二级列表 ExpandableListView

2018-04-02 16:17 489 查看
一.xml布局

<ExpandableListView
android:id="@+id/expand_listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
></ExpandableListView>


二. 写适配器 注意 继承 BaseExpandableListAdapter

public class GouWuChe_Adapter extends BaseExpandableListAdapter {

Context context;
List<GouWuChe_Bean.DataBean> gouwuche_list;

public GouWuChe_Adapter(Context context, List<GouWuChe_Bean.DataBean> gouwuche_list) {
this.context = context;
this.gouwuche_list = gouwuche_list;
}
//集合的长度
@Override
public int getGroupCount() {
return gouwuche_list.size();
}
//孩子集合的  长度
@Override
public int getChildrenCount(int i) {
return gouwuche_list.get(i).getList().size();
}
//获取  父 分组对象
@Override
public Object getGroup(int i) {
return gouwuche_list.get(i);
}
//获取   子  分组对象
@Override
public Object getChild(int i, int i1) {
return gouwuche_list.get(i).getList().get(i1);
}
//父分组  的  id
@Override
public long getGroupId(int i) {
return i;
}
//子  分组  的  id
@Override
public long getChildId(int i, int i1) {
return i1;
}

@Override
public boolean hasStableIds() {
return true;
}
//父类
@Override
public View getGroupView(int i, boolean b, View view, ViewGroup viewGroup) {
//        进行优化
viewHolder viewHolder;
if (view == null) {
viewHolder = new viewHolder();
view = View.inflate(context, R.layout.gouwuche_fulei_item, null);
viewHolder.gouwuche_fulei_checkBox = view.findViewById(R.id.gouwuche_fulei_checkBox);
view.setTag(viewHolder);
}else {
viewHolder = (viewHolder) view.getTag();
}
return view;
}
//子类
@Override
public View getChildView(int i, int i1, boolean b, View view, ViewGroup viewGroup) {
zi_viewHolder zi_viewHolder;
//        进行优化
if (view == null) {
zi_viewHolder = new zi_viewHolder();
view = View.inflate(context, R.layout.gouwuche_zilei_item, null);
zi_viewHolder.gouwuche_zi_checkBox = view.findViewById(R.id.gouwuche_zi_checkBox);
zi_viewHolder.gouwuche_zi_image = view.findViewById(R.id.gouwuche_zi_image);
zi_viewHolder.gouwuche_zi_name = view.findViewById(R.id.gouwuche_zi_name);
zi_viewHolder.gouwuche_zi_price = view.findViewById(R.id.gouwuche_zi_price);
view.setTag(zi_viewHolder);
} else {
zi_viewHolder = (zi_viewHolder) view.getTag();
}
/* String[] split = gouwuche_list.get(i).getList().get(i1).split("\\|");
Glide.with(context).load(split[0]).into(zi_viewHolder.gouwuche_zi_image);
zi_viewHolder*/
String s = gouwuche_list.get(i).getList().get(i1).getImages().split("\\|")[0];
Glide.with(context).load(s).into(zi_viewHolder.gouwuche_zi_image);
zi_viewHolder.gouwuche_zi_name.setText(gouwuche_list.get(i).getList().get(i1).getTitle());
zi_viewHolder.gouwuche_zi_price.setText(gouwuche_list.get(i).getList().get(i1).getPrice()+"");
return view;
}

@Override
public boolean isChildSelectable(int i, int i1) {
return false;
}

//    父类
public class viewHolder {
CheckBox gouwuche_fulei_checkBox;
}

//    子类
public class zi_viewHolder {
CheckBox gouwuche_zi_checkBox;
ImageView gouwuche_zi_image;
TextView gouwuche_zi_name;
TextView gouwuche_zi_price;
}
}


三.注意 在主方法 记得让 设置默认展示

//        实例化 适配器
GouWuChe_Adapter gouWuChe_adapter = new GouWuChe_Adapter(getActivity(), gouwuche_listview);
expandListview.setAdapter(gouWuChe_adapter);
//        设置默认展示出来
int groupCount = expandListview.getCount();
for (int i=0; i<groupCount; i++) {
expandListview.expandGroup(i);
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: