ListView を使ってみた

ListView は
java.lang.Object
  ↳ android.view.View
    ↳ android.view.ViewGroup
      ↳ android.widget.AdapterView<T extends android.widget.Adapter>
        ↳ android.widget.AbsListView
          ↳ android.widget.ListView
を使用します

というわけで、ListView をいじってみた

サンプルプログラム
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class ListViewTest extends Activity {
  ListView listView;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.listviewtest01);

    listView = (ListView) findViewById(R.id.ListViewTest01_ListView);

    // 表示させるリスト
    String[] items = new String[] {
        "First",
        "Second",
        "Third",
        "Fourth"
    };

    // ArrayAdapter を作成
    ArrayAdapte<string> adapter = 
      new ArrayAdapter<string> (
        this,
        android.R.layout.simple_list_item_1,
        items
      );
  
    // ListView に Adapter を設定
    listView.setAdapter(adapter);

    // ListView がクリックされた時に呼び出されるコールバックを登録
    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
      public void onItemClick(AdapterView parent, View view, int position, long id) {
      }
    });

    // ListView のアイテムが選択された時に呼び出されるコールバックを登録
    listView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
      public void onItemSelected(AdapterView parent, View view, int position, long id) {
      }

      // なにも選択されなかったときの動作
      public void onNothingSelected(AdapterView parent) {
      }
    });
  }
}
XMLリソース
<ListView
  android:id="@+id/ListView"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
</ListView>

OnItemClickListener は List のアイテムがクリックされたときに、
OnItemSelectedListener は十字キー等により List のアイテムのフォーカスが移動したときに呼び出される

プログラムを実行すると...


こんな感じ!

0 件のコメント:

コメントを投稿