二级列表
2016-06-29 20:58
134 查看
package com.example.expandablelistview1;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.ExpandableListView.OnChildClickListener;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
}
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.ExpandableListView.OnChildClickListener;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
private ListView listview; private String[] type={"朋友","家人"}; private String[][] name=new String[][]{ {"小王","小张"}, {"许雅祺","宋丽娜"} }; private int[][] img=new int[][]{ {R.drawable.a1,R.drawable.a2}, {R.drawable.a3,R.drawable.a8} }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ExpandableListView expandable=(ExpandableListView) findViewById(R.id.expandable); expandable.setAdapter(new BaseExpandableListAdapter() { @Override public boolean isChildSelectable(int groupPosition, int childPosition) { return true; } @Override public boolean hasStableIds() { return false; } @Override public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) { convertView=View.inflate(MainActivity.this, R.layout.g_item, null); TextView g_tv=(TextView) convertView.findViewById(R.id.g_tv); g_tv.setText(type[groupPosition]); return convertView; } @Override public long getGroupId(int groupPosition) { return 0; } @Override public int getGroupCount() { return type.length; } @Override public Object getGroup(int groupPosition) { return null; } @Override public int getChildrenCount(int groupPosition) { return name[groupPosition].length; } @Override public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { convertView=View.inflate(MainActivity.this, R.layout.c_item, null); ImageView c_imag=(ImageView) convertView.findViewById(R.id.c_img); TextView c_tv=(TextView) convertView.findViewById(R.id.c_tv); c_imag.setImageResource(img[groupPosition][childPosition]); c_tv.setText(name[groupPosition][childPosition]); return convertView; } @Override public long getChildId(int groupPosition, int childPosition) { return 0; } @Override public Object getChild(int groupPosition, int childPosition) { return null; } }); //Child的点击事件 expandable.setOnChildClickListener(new OnChildClickListener() { @Override public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) { ArrayList<Person> person=new ArrayList<>(); listview = (ListView) findViewById(R.id.list); if(name[groupPosition][childPosition]=="小王"){ person.add(new Person(img[groupPosition][childPosition], "小王", 2000)); }else if(name[groupPosition][childPosition]=="小张"){ person.add(new Person(img[groupPosition][childPosition], "小张", 6000)); }else if(name[groupPosition][childPosition]=="宋丽娜"){ person.add(new Person(img[groupPosition][childPosition], "宋丽娜", 60000)); }else if(name[groupPosition][childPosition]=="许雅祺"){ person.add(new Person(img[groupPosition][childPosition], "许雅祺", 600000)); } //给所有Child添加适配器 listview.setAdapter(new MyAdapter(MainActivity.this, person)); return false; } }); }
}
相关文章推荐
- Android学习笔记:用ExpandableListView实现qq好友列表
- 自定义ExpandableList
- 可展开的列表组件——ExpandableListView简单举例
- ListView动画展开布局 ExpandableLayout源码解析
- 一步一步带你实现ListView动画展开布局, ExpandableLayout实现
- ExpandableListView的使用
- ExpandableTextView
- Expandable Table Cell
- Expandable Button
- Expandable TabBar
- Expandable Input TextView
- Expandable Input Toolbar
- 一个丑丑的ExpandableListView
- ExpandableListView总结
- listView的不同item展示
- 自定义控件—自定义的ExpandableTextView
- ExpandableTextView—可以伸缩的文本
- 互斥的ExpandableListView
- 手把手教你系列 - RN如何实现一个ExpandableList(可展开列表)组件
- 自己实现一个可以折叠展开的TextView