11/08/2011

[Android] ListActivity

要建立清單式的畫面,有兩種方式一種為建立layout,一種為繼承ListActivity,交由library去建立.空白的ListActivity架構如下:

package org.itrc.ListActivityTest;
 
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
 
// 繼承 ListActivity
public class ListActivityTest extends ListActivity {
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
在此,使用一維陣列來儲存要顯示在畫面中的內容,所以請先宣告一個一維陣列~
private String[] note_array = { "itme 1", "itme 2", "itme 3", "itme 4" };
實作 onCreate 方法。若是這個ListActivity的內容是空的,可以用下面的程式碼來顯示沒有資料時的訊息~
getListView().setEmptyView();
ListActivity的資料必需要使用Adapter來載入。這裡因為只是陣列,所以使用 ListAdapter 即可。在 
 
// 無記錄 
getListView().setEmptyView(findViewById(R.id.empty)); 
// 有記錄
//ArrayAdapter is a vector. <string>型態宣告 
//android.R.layout 表示內建的layout 
ListAdapter adapter = new ArrayAdapter<string>(this, 
                     android.R.layout.simple_list_item_1, 
                     note_array); 
setListAdapter(adapter);

沒有留言:

張貼留言

請留言~一起討論吧~