จากตัวอย่าง การใช้งาน ListActivity เบื้องต้น เราสามารถสร้าง List รายการขึ้นมาได้แต่ List รายการดังกล่าว ยังดูไม่ค่อยน่าสนใจเท่าไหร่ วันนี้เราจะมาลองใส่รูปดูครับ ก่อนอื่นดูหน้าตาโปรแกรมที่เสร็จแล้วก่อนครับ
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
row.xml<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/row"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:drawableLeft="@drawable/ico_gear"
android:drawablePadding="10dp"
android:gravity="center_vertical"
/>
MainActivity.java
package com.simplelist;
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends ListActivity {
final String[] fruit = {"Apple", "Banana", "Coconut", "Durian", "Guava", "Mango", "Mangosteen", "Rambutant"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setListAdapter(new ArrayAdapter(this, R.layout.row, fruit));
}
@Override
public void onListItemClick(ListView lv, View v, int position, long id){
Toast.makeText(this, "You click " + fruit[position], Toast.LENGTH_SHORT).show();
}
}
ในส่วนของ activity เรา extends ListActivity จากนั้นใช้ method setListAdapter โดยเรา new ArrayAdapter ด้วยการใช้ layout row และส่ง ตัวแปร fruit จากนั้นใน method onListItemClick ก็แสดงข้อความว่าเราคลิกรายการไหน แล้วรูปภาพมาจากไหน ? สังเกตใน row.xml นะครับเราใช้ TextView ตัวเดียวโดยกำหนดรูปภาพโดยใช้ drawableLeft และกำหนด drawablePadding เราสามารถกำหนดได้ว่าจะใช้รูปด้านไหนซ้าย ขวา ล่าง บน โดยใช้ drawableLeft, drawableRight, drawableBottom, drawableTop แล้วแต่ว่าเราจะใช้อันไหน
android:drawableLeft="@drawable/ico_gear"
android:drawablePadding="10dp"
ในตัวอย่างนี้เราสามารถใส่รูปภาพลงไปใน List ได้ แต่ถ้าหากเราต้องการให้แต่ละรายการแตกต่างกันออกไปล่ะ อ่านได้ในบทความหน้านะครับ
