사용자 지정 행을 사용하여 목록보기를 만들고 싶습니다. ListActivity
을 확장하는 클래스와 각 행 항목에 대한 XML을 만들었습니다. 또한 더미 데이터를 생성하는 메서드를 추가했습니다. 그러나 이것은 내가 붙어있는 곳이다. 내 주 수업에서 이것을 호출하고 main.xml
에 listview를 채우려면 어떻게해야합니까?사용자 지정 목록보기 채우기
CustomListView.java 사용자 지정 목록 셀을 만들기
public class CustomListView extends ListActivity {
private ArrayList<HashMap<String,String>> list;
public CustomListView(){
list = new ArrayList<HashMap<String,String>>();
SimpleAdapter adapter = new SimpleAdapter(
this,
list,
R.layout.custom_list_item,
new String[] {"pen","price","color"},
new int[] {R.id.text1,R.id.text2, R.id.text3});
populateList();
setListAdapter(adapter);
}
private void populateList() {
HashMap<String,String> temp = new HashMap<String,String>();
temp.put("pen","MONT Blanc");
temp.put("price", "200.00$");
temp.put("color", "Silver, Grey, Black");
list.add(temp);
HashMap<String,String> temp1 = new HashMap<String,String>();
temp1.put("pen","Gucci");
temp1.put("price", "300.00$");
temp1.put("color", "Gold, Red");
list.add(temp1);
HashMap<String,String> temp2 = new HashMap<String,String>();
temp2.put("pen","Parker");
temp2.put("price", "400.00$");
temp2.put("color", "Gold, Blue");
list.add(temp2);
HashMap<String,String> temp3 = new HashMap<String,String>();
temp3.put("pen","Sailor");
temp3.put("price", "500.00$");
temp3.put("color", "Silver");
list.add(temp3);
HashMap<String,String> temp4 = new HashMap<String,String>();
temp4.put("pen","Porsche Design");
temp4.put("price", "600.00$");
temp4.put("color", "Silver, Grey, Red");
list.add(temp4);
}
}
custom_list_item.xml는
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView android:id="@+id/text1"
android:textSize="16sp"
android:textStyle="bold"
android:textColor="#FFFF00"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<TextView android:id="@+id/text2"
android:textSize="12sp"
android:textStyle="bold"
android:layout_width="wrap_content"
android:layout_height="fill_parent"/>
<TextView android:id="@+id/text3"
android:typeface="sans"
android:textSize="14sp"
android:textStyle="italic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
그럼'SimpleAdapter' 충분하지 않아? – Johan
셀의 사용자 지정 레이아웃을 만들려는 경우 아니요. 네가 1-2 줄의 텍스트와 아이콘을 원하면 네. – thepoosh