ExpandListView实现下拉列表案例

本文介绍如何在Android中使用ExpandListView实现下拉列表功能。ExpandListView作为ListView的扩展,其Group为TextView,子元素可包含多个ListView条目。通过自定义适配器和相关布局文件,可以创建具有下拉展开效果的列表。示例代码包括实体类、适配器和布局文件。
摘要由CSDN通过智能技术生成

ExpandListView实现下拉列表案例

使用方式与ListView类似,是ListView的一个延申,Group为TextView,子元素为ListView。

效果图:

代码:

实体类:

Group.java

public class Group {
   
    private String gName;

    public Group() {
   
    }

    public Group(String gName) {
   
        this.gName = gName;
    }

    public String getName() {
   
        return gName;
    }

    public void setName(String gName) {
   
        this.gName = gName;
    }
}

Item.java

public class Item {
   

    private int iId;
    private String iName;

    public Item() {
   
    }

    public Item(int iId, String iName) {
   
        this.iId = iId;
        this.iName = iName;
    }

    public int getId() {
   
        return iId;
    }

    public String getName() {
   
        return iName;
    }

    public void setId(int iId) {
   
        this.iId = iId;
    }

    public void setName(String iName) {
   
        this.iName = iName;
    }
}

自定义适配器:ExpandableListViewAdapter.java

public class ExpandableListViewAdapter extends BaseExpandableListAdapter {
   

    private Context mContext;
    private ArrayList<Group> groupList;
    private ArrayList<ArrayList<Item>> itemList;

    public ExpandableListViewAdapter(Context context, ArrayList<Group> gData, ArrayList<ArrayList<Item>> iData) {
   
        this.mContext = context;
        this.groupList = gData;
        this.itemList = iData;
    }

    //返回Group的个数
    @Override
    public int getGroupCount() {
   
        return groupList.size();
    }

    //返回某个Group对应的Item的个数
    @Override
    public int getChildrenCount(int groupPosition) {
   
        return itemList.get(groupPosition).size();
    }

    //返回某个Group对象
    @Override
    public Object getGroup(int groupPosition) {
   
        return groupList.get(groupPosition);
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值