BaseExpandableListAdapter应用:QQ好友列表,折叠式列表

布局使用控件:ExpandableListView
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
        <ExpandableListView
            android:id="@+id/ex_list"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_marginTop="5dp"
            android:visibility="visible" />
</RelativeLayout>

代码实例:
import android.app.Activity;
import android.content.ClipData;
import android.content.Context;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.chinaiat.ciatwild.R;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by Bob on 2016-04-11
 */
public class LinePlanAdapter extends BaseExpandableListAdapter {
    private Context mContext;
//    private ArrayList<String> childData = null;
    private ArrayList<ArrayList<String>> groupData = null;

    public LinePlanAdapter(Context context, ArrayList<ArrayList<String>> groupData) {
        this.mContext = context;
        this.groupData = groupData;
    }

    @Override
    public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
        TextView tv_group = new TextView(mContext);
        tv_group.setPadding(50,0,0,0);
        tv_group.setTextSize(18f);
        tv_group.setText("方案" + (groupData.get(groupPosition).size()));
        return tv_group;
    }

    @Override
    public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {

        TextView tv_child=new TextView(mContext);
        tv_child.setText(groupData.get(groupPosition).get(childPosition));
        return tv_child;
    }

    @Override
    public int getGroupCount() {
        return groupData.size();
    }

    @Override
    public int getChildrenCount(int groupPosition) {
        return groupData.get(groupPosition).size();
    }

    @Override
    public Object getGroup(int groupPosition) {
        return groupData.get(groupPosition);
    }

    @Override
    public Object getChild(int groupPosition, int childPosition) {
        return groupData.get(groupPosition).get(childPosition);
    }

    @Override
    public long getGroupId(int groupPosition) {
        return groupPosition;
    }

    @Override
    public long getChildId(int groupPosition, int childPosition) {
        return childPosition;
    }

    @Override
    public boolean hasStableIds() {
        return false;
    }

    @Override
    public boolean isChildSelectable(int groupPosition, int childPosition) {
        return true;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值