可扩展ListView
来源:互联网 发布:美工电脑是什么意思 编辑:程序博客网 时间:2024/05/20 02:27
xml配制
<ExpandableListView android:id="@+id/elv_common_num" android:layout_width="match_parent" android:layout_height="wrap_content" ></ExpandableListView>
获取数据的方法
public static List<Group> getCommonNum(Context context) {List<Group> list = new ArrayList<CommonNumDao.Group>();String path = context.getFilesDir() + "/" + "commonnum.db";SQLiteDatabase db = SQLiteDatabase.openDatabase(path, null, SQLiteDatabase.OPEN_READONLY);Cursor cursor = db.query("classlist", new String[]{"name", "idx"}, null, null, null, null, null);while(cursor.moveToNext()) {Group group = new Group();group.commonName = cursor.getString(0);group.idx = cursor.getString(1);group.childList = getChildNum(context, group.idx);list.add(group);}cursor.close();db.close();return list;}private static List<Child> getChildNum(Context context, String idx) {// TODO Auto-generated method stubList<Child> childList = new ArrayList<CommonNumDao.Child>();String path = context.getFilesDir() + "/" +"commonnum.db";SQLiteDatabase db = SQLiteDatabase.openDatabase(path, null, SQLiteDatabase.OPEN_READONLY);Cursor cursor = db.query("table" + idx, new String[]{"_id", "number", "name"}, null, null, null, null, null);while(cursor.moveToNext()) {Child child = new Child();child.id = cursor.getString(0);child.number = cursor.getString(1);child.name = cursor.getString(2);childList.add(child);}return childList;}public static class Group {public String commonName;public String idx;public List<Child> childList;}public static class Child {public String number;public String name;public String id;}获取数据
new Thread(){public void run() {mGroupList = CommonNumDao.getCommonNum(getApplicationContext());mHandler.sendEmptyMessage(0);};}.start();数据适配器的设置
class MyAdapter extends BaseExpandableListAdapter {@Overridepublic int getGroupCount() {return mGroupList.size();}@Overridepublic int getChildrenCount(int groupPosition) {return mGroupList.get(groupPosition).childList.size();}@Overridepublic Group getGroup(int groupPosition) {return mGroupList.get(groupPosition);}@Overridepublic Child getChild(int groupPosition, int childPosition) {return mGroupList.get(groupPosition).childList.get(childPosition);}@Overridepublic long getGroupId(int groupPosition) {return groupPosition;}@Overridepublic long getChildId(int groupPosition, int childPosition) {return childPosition;}@Overridepublic boolean hasStableIds() {// 是否将mGroupList的id作为数据适配器的id,不做修改return false;}@Overridepublic View getGroupView(int groupPosition, boolean isExpanded,View convertView, ViewGroup parent) {GroupViewHolder holder = null;TextView textView = null;if(convertView == null) {holder = new GroupViewHolder();textView = new TextView(getApplicationContext());textView.setText(" " + mGroupList.get(groupPosition).commonName);textView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 25);textView.setTextColor(Color.RED);convertView = textView;holder.textView = textView;convertView.setTag(holder);} else {holder = (GroupViewHolder) convertView.getTag();}holder.textView = textView;return convertView;}@Overridepublic View getChildView(int groupPosition, int childPosition,boolean isLastChild, View convertView, ViewGroup parent) {// TODO Auto-generated method stubChildViewHolder holder = null;if(convertView == null) {holder = new ChildViewHolder();convertView = View.inflate(getApplicationContext(), R.layout.elv_common_child, null);holder.tv_common_num_name = (TextView) convertView.findViewById(R.id.tv_common_num_name);holder.tv_common_num_number = (TextView) convertView.findViewById(R.id.tv_common_num_number);convertView.setTag(holder);} else {holder = (ChildViewHolder) convertView.getTag();}holder.tv_common_num_name.setText(mGroupList.get(groupPosition).childList.get(childPosition).name);holder.tv_common_num_number.setText(mGroupList.get(groupPosition).childList.get(childPosition).number);return convertView;}@Overridepublic boolean isChildSelectable(int groupPosition, int childPosition) {// 是否item可被选中return true;}}static class ChildViewHolder {private TextView tv_common_num_name;private TextView tv_common_num_number;}static class GroupViewHolder {private TextView textView;}
阅读全文
0 0
- 可扩展的listview
- 可扩展的listview
- 可扩展ListView
- 可扩展ListView
- 可扩展的listview~ExpandableListView
- android ExpandableListView (可扩展ListView)
- Json解析和可扩展的ListView
- 4.7 可扩展的Listview : ExpandableListView
- 可扩展的listview适配器用法
- Json解析和可扩展的ListView
- TreeMap + ListView实现可扩展树形数据显示
- Android中ExpandableListVivew可扩展的ListView(十二)
- ExpandableListView安卓开发可扩展的listview
- android:ExpandableListView(可扩展的ListView)使用详解;
- 带展开更多收起更多的可扩展的ListView
- android 列表ListView和可扩展列表ExpandableListView的实现
- ListView扩展
- scrollView中嵌套gridView或者listView亦或者可扩展的view的情况
- Android之Intent(数据传递)
- ros学习
- VM 虚拟机配置NAT模式,连接互联网
- caffe 训练模型时出错 caffe-parallel has a bug: Check failed: proto.SerializeToOstream(&output)
- SDUT 2122-数据结构实验之链表七:单链表中重复元素的删除
- 可扩展ListView
- caffe编译 `make pytest` 出错:`fatal error: 'pyconfig.h' file not found`
- android之微信分享音频
- 代码规范 : 集合处理
- Resource Acquisition Is Initialization(RAII)
- 3.Longest Substring Without Repeating Characters
- MongoDB的基本使用
- poj 2236
- 南阳oj S + T