ExpandableListView安卓开发可扩展的listview
来源:互联网 发布:2017优化设计英语答案 编辑:程序博客网 时间:2024/04/30 21:51
//安卓开发:ExpandableListView的用法:
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 < 5; 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;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="@drawable/default_bg">
<ExpandableListView android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:cacheColorHint="#00000000"
/>
</RelativeLayout>
//member_listview.xml布局文件的代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="40dip"
android:layout_gravity="center_horizontal">
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="40dip"
android:id="@+id/layout_013">
<ImageView android:id="@+id/ImageView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="10dip"
android:src="@drawable/user_group"></ImageView>
<RelativeLayout android:id="@+id/layout_013"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView android:id="@+id/content_001"
android:textSize="26px"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#FFFFFF"
android:gravity="center_vertical"
android:paddingLeft="10px"
android:layout_gravity="center_vertical"></TextView>
<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tubiao"
android:layout_alignParentRight="true"></ImageView>
</RelativeLayout>
</LinearLayout>
<!--
<RelativeLayout android:id="@+id/layout_013"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/ImageView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon"></ImageView>
<TextView android:id="@+id/content_001"
android:text="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_toRightOf="@+id/ImageView01"
android:layout_height="wrap_content"></TextView>
<ImageView android:layout_width="wrap_content"
android:layout_toRightOf="@+id/content_001"
android:layout_height="wrap_content"
android:id="@+id/tubiao"></ImageView>
</RelativeLayout>
-->
</LinearLayout>
//member_childitem.xml布局文件的代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/childlayout"
android:orientation="horizontal">
<ImageView android:id="@+id/child_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/child_image"
android:paddingTop="10dip"
android:layout_marginLeft="40dip"></ImageView>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView android:text=""
android:id="@+id/child_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textSize="16dip"
android:layout_gravity="center_vertical"></TextView>
<TextView android:text=""
android:id="@+id/child_text2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12dip"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"></TextView>
</LinearLayout>
</LinearLayout>
- ExpandableListView安卓开发可扩展的listview
- 可扩展的listview~ExpandableListView
- 4.7 可扩展的Listview : ExpandableListView
- android ExpandableListView (可扩展ListView)
- android:ExpandableListView(可扩展的ListView)使用详解;
- android 列表ListView和可扩展列表ExpandableListView的实现
- Android开发之ExpandableListView: 可展开的ListView
- 安卓开发-ListView的适配器和监听器/ExpandableListView的使用
- 可扩展的listview
- 可扩展的listview
- ExpandableListView的使用,可展开的ListView
- 可扩展的列表组件(ExpandableListView)
- 可扩展的下拉列表—ExpandableListView
- Android ExpandableListView 可展开的ListView
- 可拓展的ListView——ExpandableListView
- ExpandableListView,可展开和折叠的ListView
- Listview扩展ExpandableListView
- Androio UI, ListView, ExpandableListView 可伸缩的ListView
- Android Ormlite的综合查询
- Spring IoC的理解----找女朋友的方法
- 跟siki老师学C#第二天
- 在代码中修改TextView的DrawableRight图片
- Oracle查询1-12月数据
- ExpandableListView安卓开发可扩展的listview
- 堆排序算法
- JavaScript 学习摘要
- Jquery scroll 向下滚动到据顶部超过1000px时,回到顶部
- Python的Module和Package
- 快速掌握Lua 5.3 —— "Iterators"和"Generic for"
- 浏览器引擎
- oracle查询一个时间段每天的数据量
- python数字图像处理(2):图像的读取、显示与保存