二级列表

二级列表首先需要     一个组的集合       其次还需要一个子集合

    List<String> group;           //组列表

    List<List<String>> child;     //子列表
    ContactsInfoAdapter adapter;  //数据适配器

    private ExpandableListView listView;


     /**
     * 初始化组、子列表数据
     */
    private void initializeData(){
        group = new ArrayList<String>();
        child = new ArrayList<List<String>>();
        addInfo("Andy",new String[]{"male","138123***","GuangZhou"});
        addInfo("Fairy",new String[]{"female","138123***","GuangZhou"});
        addInfo("Jerry",new String[]{"male","138123***","ShenZhen"});
        addInfo("Tom",new String[]{"female","138123***","ShangHai"});
        addInfo("Bill",new String[]{"male","138231***","ZhanJiang"});
    }
    /**
     * 模拟给组、子列表添加数据
     * @param g-group
     * @param c-child
     */
    private void addInfo(String g,String[] c){
        group.add(g);
        List<String> childitem = new ArrayList<String>();
        for(int i=0;i<c.length;i++){
            childitem.add(c[i]);
        }
        child.add(childitem);
    }

、、、、、、适配器s

class ContactsInfoAdapter extends BaseExpandableListAdapter {
        @Override
        public int getGroupCount() {
            return group.size();
        }
        @Override
        public int getChildrenCount(int i) {
            return child.size();
        }
        @Override
        public Object getGroup(int i) {
            return group.get(i);
        }
        @Override
        public Object getChild(int i, int i1) {
            return child.get(i).get(i1);
        }
        @Override
        public long getGroupId(int i) {
            return i;
        }
        @Override
        public long getChildId(int i, int i1) {
            return i1;
        }
        @Override
        public boolean hasStableIds() {
            return false;
        }
        @Override
        public View getGroupView(int i, boolean b, View view, ViewGroup viewGroup) {
            TextView text=null;
            if (view==null){
                text=new TextView(MainActivity.this);
            }else {
                text= (TextView) view;
                text.setText(group.get(i));
                text.setTextSize(20);
                text.setPadding(36,10,0,10);//设置text的位置
            }
            return text;
        }
        @Override
        public View getChildView(int i, int i1, boolean b, View view, ViewGroup viewGroup) {
            TextView text=null;
            if (view==null){
                text=new TextView(MainActivity.this);
            }else {
                text= (TextView) view;
                text.setText(child.get(i).get(i1));
                text.setTextSize(20);
                text.setPadding(72,10,0,10);
            }
            return text;
        }

        // 返回的必须为true       组的集合可以选择     查看子列表

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值