列表(ListView)& SimpleAdapter

1. 新建一Layout XML文件,如下圖:

 

在面板拖拽,更改相關屬性,

res/list_view.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" >
    
    <ListView
        android:id="@+id/listView01"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center" 
        android:divider="@null" 
        android:dividerHeight="0dp" />

</LinearLayout>

 

 

 

 

 

 

2. 新建ListView中行的Layout XML

res/list_row.xml清單如下:

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >
    
    <ImageView android:id="@+id/imgIcon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="8dp" />
    
    <LinearLayout android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:layout_marginTop="5dp"
        android:orientation="vertical"
        android:paddingLeft="0px"
        android:paddingRight="5dp" >
        
        <RelativeLayout android:layout_width="fill_parent"
            android:layout_height="wrap_content" >
            
            <TextView android:id="@+id/title01"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:textColor="@color/red"
                android:textSize="@dimen/font_size24" />
            
        </RelativeLayout>
        
        <TextView android:id="@+id/desText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="4dp"
            android:textColor="@color/blue"
            android:textSize="@dimen/font_size20"/>
        
    </LinearLayout>
    

</LinearLayout>

 

 

 

 

 

 

3. 編寫代碼

(1) 獲取各行數據

(2) 新建SimpleAdapter實例

(3) ListView綁定SimpleAdapter

 

代碼如下:

 

ListView listView = (ListView) findViewById(R.id.listView01);
				
				List<Map<String, Object>> data = getSampleData();
				SimpleAdapter sAdapter = new SimpleAdapter(
						MainActivity.this, 
						data, 
						R.layout.list_row,
						new String[] {
							"imgIcon",
							"title01",
							"desText"
						},
						new int[] {
							R.id.imgIcon,
							R.id.title01,
							R.id.desText
						}
				);
				
				listView.setAdapter(sAdapter);

 

 

 

 

 

 

運行效果:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章