package com.flyco.dialogsamples.adapter;
import android.content.Context;
import android.graphics.Color;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.TextView;
import com.flyco.dialogsamples.R;
import com.flyco.dialogsamples.ui.DialogHomeActivity;
import butterknife.ButterKnife;
public class HomeAdapter extends BaseExpandableListAdapter {
private Context mContext;
public HomeAdapter(Context context) {
this.mContext = context;
}
// --->group
@Override
public int getGroupCount() {
return DialogHomeActivity.mGroups.length;
}
@Override
public Object getGroup(int groupPosition) {
return DialogHomeActivity.mGroups[groupPosition];
}
@Override
public long getGroupId(int groupPosition) {
return groupPosition;
}
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = View.inflate(mContext, R.layout.ad_dialog_home, null);
}
TextView tv = ButterKnife.findById(convertView, R.id.tv_bubble);
tv.setText(DialogHomeActivity.mGroups[groupPosition]);
return convertView;
}
// --->child
@Override
public int getChildrenCount(int groupPosition) {
return DialogHomeActivity.mChilds[groupPosition].length;
}
@Override
public Object getChild(int groupPosition, int childPosition) {
return DialogHomeActivity.mChilds[groupPosition][childPosition];
}
@Override
public long getChildId(int groupPosition, int childPosition) {
return childPosition;
}
@Override
public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView,
ViewGroup parent) {
if (convertView == null) {
convertView = View.inflate(mContext, R.layout.ad_dialog_home, null);
}
TextView tv = ButterKnife.findById(convertView, R.id.tv_bubble);
View v_line = ButterKnife.findById(convertView, R.id.v_line);
v_line.setVisibility(View.INVISIBLE);
tv.setTextColor(Color.parseColor("#383838"));
tv.setText(DialogHomeActivity.mChilds[groupPosition][childPosition]);
return convertView;
}
@Override
public boolean hasStableIds() {
return true;
}
@Override
public boolean isChildSelectable(int groupPosition, int childPosition) {
return true;
}
}