Android中列表

package Yusi.test.hello;

import java.util.ArrayList;

public class Activety 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(Activety.this);
        exList = (ExpandableListView) findViewById(R.id.list);
  exList.setAdapter(adapter);
  exList.setGroupIndicator(null);
  exList.setDivider(null);
    }
   
    class ExAdapter extends BaseExpandableListAdapter {
     Activety exlistview;

     public ExAdapter(Activety 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;
     }

    }
}

 

//=========================================================================================

main.xml

<?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"/>

</RelativeLayout>

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>

 

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>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值