ExpandListView--二级列表事例
来源:互联网 发布:软件资格考试怎么报名? 编辑:程序博客网 时间:2024/05/16 13:41
<span style="font-size:24px;">活动界面public class MainActivity extends Activity {private ExpandableListView el;// 一级列表的列表private List<String> grouplist;// 二级标题的列表private List<List<String>> itemlist;public void getdata() {grouplist = new ArrayList<String>();grouplist.add("我的好友");grouplist.add("我的家人");grouplist.add("我的设备");grouplist.add("同学");grouplist.add("八维同事");grouplist.add("八维市场部");List<String> item = new ArrayList<String>();item.add("好友1");item.add("好友2");List<String> item1 = new ArrayList<String>();item1.add("家人1");item1.add("家人2");List<String> item2 = new ArrayList<String>();item2.add("设备1");item2.add("设备2");List<String> item3 = new ArrayList<String>();item3.add("同学1");item3.add("同学2");List<String> item4 = new ArrayList<String>();item4.add("同事1");item4.add("同事2");List<String> item5 = new ArrayList<String>();item5.add("晋中市场部");item5.add("晋南市场部");itemlist = new ArrayList<List<String>>();itemlist.add(item);itemlist.add(item1);itemlist.add(item2);itemlist.add(item3);itemlist.add(item4);itemlist.add(item5);}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);getdata();el = (ExpandableListView) findViewById(R.id.el);el.setAdapter(new Myad());// 一级标题的点击事件el.setOnGroupClickListener(new OnGroupClickListener() {@Overridepublic boolean onGroupClick(ExpandableListView parent, View v,int groupPosition, long id) {Toast.makeText(MainActivity.this, "第" + groupPosition + "组被点击",0).show();return false;}});// 二级标题的点击事件el.setOnChildClickListener(new OnChildClickListener() {@Overridepublic boolean onChildClick(ExpandableListView parent, View v,int groupPosition, int childPosition, long id) {Toast.makeText(MainActivity.this,itemlist.get(groupPosition).get(childPosition), 0).show();return false;}});}class Myad implements ExpandableListAdapter {@Overridepublic void registerDataSetObserver(DataSetObserver observer) {// TODO Auto-generated method stub}@Overridepublic void unregisterDataSetObserver(DataSetObserver observer) {// TODO Auto-generated method stub}@Overridepublic int getGroupCount() {// 返回一级标题的个数return grouplist.size();}@Overridepublic int getChildrenCount(int groupPosition) {// 返回一级标题对应的二级标题的个数return itemlist.get(groupPosition).size();}@Overridepublic Object getGroup(int groupPosition) {// TODO Auto-generated method stubreturn null;}@Overridepublic Object getChild(int groupPosition, int childPosition) {// TODO Auto-generated method stubreturn null;}@Overridepublic long getGroupId(int groupPosition) {// TODO Auto-generated method stubreturn 0;}@Overridepublic long getChildId(int groupPosition, int childPosition) {// TODO Auto-generated method stubreturn 0;}@Overridepublic boolean hasStableIds() {// TODO Auto-generated method stubreturn false;}// 得到一级标题的view@Overridepublic View getGroupView(int groupPosition, boolean isExpanded,View convertView, ViewGroup parent) {View view = View.inflate(MainActivity.this, R.layout.group_layout,null);TextView tv_group = (TextView) view.findViewById(R.id.tv_group);tv_group.setText(grouplist.get(groupPosition));return view;}// 得到二级标题的view@Overridepublic View getChildView(int groupPosition, int childPosition,boolean isLastChild, View convertView, ViewGroup parent) {View vv = View.inflate(MainActivity.this, R.layout.group_item, null);TextView tv_item = (TextView) vv.findViewById(R.id.tv_item);tv_item.setText(itemlist.get(groupPosition).get(childPosition));return vv;}@Overridepublic boolean isChildSelectable(int groupPosition, int childPosition) {// TODO Auto-generated method stubreturn true;}@Overridepublic boolean areAllItemsEnabled() {// TODO Auto-generated method stubreturn false;}@Overridepublic boolean isEmpty() {// TODO Auto-generated method stubreturn false;}@Overridepublic void onGroupExpanded(int groupPosition) {// TODO Auto-generated method stub}@Overridepublic void onGroupCollapsed(int groupPosition) {// TODO Auto-generated method stub}@Overridepublic long getCombinedChildId(long groupId, long childId) {// TODO Auto-generated method stubreturn 0;}@Overridepublic long getCombinedGroupId(long groupId) {// TODO Auto-generated method stubreturn 0;}}}</span>
主函数布局
<span style="font-size:24px;"><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <include android:id="@+id/include1" android:layout_width="wrap_content" android:layout_height="20dp" layout="@layout/xiaoyun" /> <ExpandableListView android:id="@+id/el" android:layout_width="match_parent" android:layout_height="400dp" android:layout_marginTop="50dp" > </ExpandableListView> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/include1" android:layout_alignTop="@+id/include1" android:layout_marginTop="22dp" android:text="好友分组" /></RelativeLayout></span><pre name="code" class="java"><span style="font-size:24px;">一级列表布局<?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" android:orientation="horizontal" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:text="4/17" /> <TextView android:id="@+id/tv_group" android:layout_width="wrap_content" android:layout_height="50dp" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="45dp" android:text="textview" /></RelativeLayout></span>二级列表布局
<span style="font-size:24px;"><?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" android:orientation="vertical" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:src="@drawable/ic_launcher" /> <TextView android:id="@+id/tv_item" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_toRightOf="@+id/imageView1" android:text="TextView" /></RelativeLayout></span>
0 0
- ExpandListView--二级列表事例
- 使用ExpandListView二级列表实现购物车
- ExpandListview应用(实现二级列表和实现新闻分类)
- 关于ExpandListView实现列表搜索
- ExpandListview
- jquerymobile普通列表事例
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- 二级列表
- unity 计算两点的距离
- Compose YAML 模板文件
- 公司面试题目 打印矩阵,先往右打印,到头然后向左下打印,到头然后向左打印,最后向上打印
- Spark入门实战系列--6.SparkSQL(下)--Spark实战应用
- acm 3 1004
- ExpandListView--二级列表事例
- iOS开发——静态库的导入和头文件路径的设置
- PHP设计模式:观察者模式
- Spark入门实战系列--7.Spark Streaming(上)--实时流计算Spark Streaming原理介绍
- 有感
- <<web>>3d 相册
- 【LeetCode】330. Patching Array
- js解析json数据
- LeetCode---Rectangle Area解题分析