我想在一个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行高