package cn.nedu.exlistview;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.AbsListView;
import android.widget.BaseExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
public class ExListView extends Activity {
private static final String G_TEXT = "g_text";
private static final String C_TEXT1 = "c_text1";
private static final String C_TEXT2 = "c_text1";
List<Map<String, String>> groupData = new ArrayList<Map<String, String>>();
List<List<Map<String, String>>> childData = new ArrayList<List<Map<String, String>>>();
ExAdapter adapter;
ExpandableListView exList;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
for (int i = 0; i < 3; i++) {
Map<String, String> curGroupMap = new HashMap<String, String>();
groupData.add(curGroupMap);
curGroupMap.put(G_TEXT, "Group " + i);
List<Map<String, String>> children = new ArrayList<Map<String, String>>();
for (int j = 0; j < 5; j++) {
Map<String, String> curChildMap = new HashMap<String, String>();
children.add(curChildMap);
curChildMap.put(C_TEXT1, "Child " + j);
curChildMap.put(C_TEXT2, "Child " + j);
}
childData.add(children);
}
adapter=new ExAdapter(ExListView.this);
exList = (ExpandableListView) findViewById(R.id.list);
exList.setAdapter(adapter);
exList.setGroupIndicator(null);
exList.setDivider(null);
}
class ExAdapter extends BaseExpandableListAdapter {
ExListView exlistview;
public ExAdapter(ExListView elv) {
super();
exlistview = elv;
}
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
View view = convertView;
if (view == null) {
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.member_listview, null);
}
TextView title = (TextView) view.findViewById(R.id.content_001);
title.setText(getGroup(groupPosition).toString());
ImageView image=(ImageView) view.findViewById(R.id.tubiao);
if(isExpanded)
image.setBackgroundResource(R.drawable.btn_browser2);
else image.setBackgroundResource(R.drawable.btn_browser);
return view;
}
public long getGroupId(int groupPosition) {
return groupPosition;
}
public Object getGroup(int groupPosition) {
return groupData.get(groupPosition).get(G_TEXT).toString();
}
public int getGroupCount() {
return groupData.size();
}
//**************************************
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
View view = convertView;
if (view == null) {
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.member_childitem, null);
}
final TextView title = (TextView) view.findViewById(R.id.child_text);
title.setText(childData.get(groupPosition).get(childPosition).get(C_TEXT1).toString());
final TextView title2 = (TextView) view.findViewById(R.id.child_text2);
title2.setText(childData.get(groupPosition).get(childPosition).get(C_TEXT2).toString());
return view;
}
public long getChildId(int groupPosition, int childPosition) {
return childPosition;
}
public Object getChild(int groupPosition, int childPosition) {
return childData.get(groupPosition).get(childPosition).get(C_TEXT1).toString();
}
public int getChildrenCount(int groupPosition) {
return childData.get(groupPosition).size();
}
//**************************************
public boolean hasStableIds() {
return true;
}
public boolean isChildSelectable(int groupPosition, int childPosition) {
return true;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
ExListView.rar (26个子文件)
ExListView
.project 846B
bin
res
classes
cn
nedu
exlistview
R$string.class 427B
R$layout.class 473B
R$drawable.class 574B
R.class 531B
ExListView$ExAdapter.class 3KB
R$attr.class 340B
ExListView.class 2KB
R$id.class 655B
AndroidManifest.xml 641B
src
cn
nedu
exlistview
ExListView.java 5KB
project.properties 360B
res
values
strings.xml 173B
layout
member_childitem.xml 1KB
main.xml 448B
member_listview.xml 3KB
drawable-ldpi
icon.png 2KB
drawable-hdpi
default_bg.png 111KB
btn_browser.png 1KB
btn_browser2.png 2KB
child_image.png 2KB
user_group.png 3KB
icon.png 4KB
drawable-mdpi
icon.png 3KB
.classpath 288B
gen
cn
nedu
exlistview
R.java 2KB
assets
共 26 条
- 1
资源评论
- r171717092014-02-10比较老的代码了,不太需要了
zoulu1
- 粉丝: 0
- 资源: 14
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功