当前位置: 代码迷 >> Android >> 新手-ListView与Button无法共存
  详细解决方案

新手-ListView与Button无法共存

热度:55   发布时间:2016-04-28 06:49:57.0
新手求助--ListView与Button无法共存
我想在一个Activity中实现一个按钮A,A按钮下方是一个ListView

问题是ListView里面的每一项都有一个按钮A,但我在XML中就放了一个Button,而且ListView行高设置不知道怎么写。

1.能不能告诉我Xml中应该改什么?
2.ListView行高设置代码在java文件中怎么写?

以下是我的JAVA文件
  ListView listView = (ListView) findViewById(R.id.listview1listview);
    ArrayList<HashMap<String, String>> mylist =new ArrayList<HashMap<String,   String>>();
    for (int j = 0; j < 30; j++) {
      HashMap<String, String> map = new HashMap<String, String>();
      map.put("ItemTitle", "This is Title"+(j+1));
      //map.put("ItemText", "This is text"+(i+1));
      mylist.add(map);
    }   
  SimpleAdapter adapter = new SimpleAdapter(this, mylist,R.layout.contslist,
        new String[] { "ItemTitle", "ItemText" },
        new int[] { R.id.listitem1ItemTitle, R.id.listitem1ItemText });
    
    listView.setAdapter(adapter);
------解决方案--------------------
你这里ListView的每一项有button的话,不能直接这么用SimpleAdapter,可以用ArrayAdapter,在重写的getView方法中inflate你写个一个xml布局,这个xml就是ListView的每个item的内容,大概可以如下:
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="100dip"
        android:gravity="center_vertical">

    <LinearLayout
            android:layout_width="0dip"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:orientation="vertical">
    <TextView
            android:id="@+id/title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textAppearance="?android:textAppearanceLarge"
            android:textColor="@android:color/black"/>
    <TextView
            android:id="@+id/second_title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textAppearance="?android:textAppearanceMedium"
            android:textColor="@android:color/darker_gray"/>

    </LinearLayout>
    <Button
            android:id="@+id/yourButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
</LinearLayout>


红色的那行代表设置的item行高
  相关解决方案